在有序数组中查找目标数的下标

关于C语言中查找的算法(折半查找发)_有序数组

例如在数组“1 2 3 4 5 6 7 8 9 10“中查找数字“7”

第一次循环:head=0,last=9 ,mid=4(默认向下取整)

v[mid]=5<7;所以head=5;

第二次循环:head=5,last=9 ,mid=7

v[mid]=8>7;所以last=6;

第三次循环:head=5,last=6 ,mid=5

v[mid]=6<7;所以head=6;

第四次循环:head=6,last=6 ,mid=6

v[mid]=7=7;所以找到了目标数的下标mid=6;

由此可见比顺序查找(从前往后查找)要节省步骤

在主函数中调用该函数就可以了