这道题可以用折半查找的办法做吗?麻烦大神帮忙解答一下吧!!!谢谢!!!

有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中, 插入之后依然有序。指针实现

插入数组意味着需要将数组插入位置后面的元素全部搬动一次,相当低效。

这里最好使用链表,当然更好的是使用二叉排序树。

非要这么做也可以,参考

http://blog.csdn.net/xiaofeige567/article/details/26879075

文章是用的顺序查找,按照你说的折半查找也可以。

已经有序了的,用二分法(就是你说的折半查找)速度是最快的,但是因为是数组,所以你的数组长度变化时内部的实现是比较耗时的,也不提倡这种做法。最好是用链表实现,或者list这些可以动态修改长度的结构。
顺序查找的时间复杂度是f(x),二分法查找的时间复杂度是f(log2x),所以速度是最快的。

折半查找是一种查询已知的有序集合中有没有要找的元素,你的问题却要进行插入操作(本质是排序),问题不一样哦

在数组array[2,7,11,15,16,33,44]中查找10,使用折半查找代码实现