当前位置: 代码迷 >> C语言 >> [求助]学习中~求教
  详细解决方案

[求助]学习中~求教

热度:95   发布时间:2007-07-10 10:41:52.0
[求助]学习中~求教
一个已经排好序的数组,输入一个数,利用二分法把这个数从原数组中删除,数组顺序保持不变。如原数组为1,3,5,7,9,11,13,15,17,19,待删除的数为13,则输出为1,3,5,7,9,11,15,17,19。
二分法:每次都是判断中间的数是否满足要求,若满足则删除,若不满足,则把该数当作边界,然后再找中点。例如这一题,第一次的是10个数的中点,为11,发现11<13,则找11-19的中点15,发现15>13,再找11-15的中点13,正好,则删除

这是我在看教程的时候~有个地方实在不明白~怎么这10个数里面11是中点~求教
搜索更多相关的解决方案: 学习  

----------------解决方案--------------------------------------------------------

中点为(n-1)/2,n为元素个数,例如这题,n=10,中点就为4,而a[4]=11。


----------------解决方案--------------------------------------------------------
偶数个元素的集合,其“中点”当然无法统一。不要钻牛角尖

----------------解决方案--------------------------------------------------------

哦哦~~明白


----------------解决方案--------------------------------------------------------
  相关解决方案