Python二分查找算法,二分查找非递归算法
二分法查找元素
二分法是一个基本的算法,就是在一个有序数组中快速找到元素。
内容如下。
1)首先,将序列分为两部分。
)2)将中值与检索到的值进行比较,以确认检索到的值在哪个范围内。
3)将确定的范围再次分成两半,进行上述操作,直到找到目标元素的位置。非函数递归的二分法
不说话直接上代码。
# include stdio . hint main((inta[10000],n,I,x,low=0,mid,high,j=0,b=-1;//定义变量scanf的高( %d ,n)=n-1;for(I=0;在;I ) Scanf(%d ,a[I];//使用数组存储数据}scanf(%d ,x);//输入要搜索的元素while (low=high )//决定循环条件)j;//J周期次数,即搜索次数MID=(低高)/2;//二分法if(a[mid]x )//这两种情况对应两个if条件。使用循环逐渐缩小搜索范围,直到找到//结果({ high=mid-1;(if)a[mid]x){ low=mid 1;} If(a[mid]==x)/如果循环中的值和你要找的值相同,可以输出结//液体,同时退出循环(printf(%d\n ,mid);printf(%d ,j);b=0;布莱克;//其中b=0用于确认找到要搜索的值}if(b==-1 )//b=-1,只输出搜索次数(printf) %d ,j)}未找到目标元素时返回0;//程序结束后返回0。)二分法基本就是这么个思路。直到找到结果,它一直一分为二。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。