c语言中的“折半查找法”是什么?
半搜索法也称为二进制搜索法。它充分利用了元素之间的顺序关系,采用分治策略,在最坏情况下可以用o(logn)完成搜索任务。例如,排序后的数据是151235647889123456。如果要查找12,请先将12与上述9个数字中的中间数字(64)进行比较,12<64按上述顺序排列,因此您找到的数据位于前半部分,即15123564,然后将12与前半部分的中间数字(12)进行比较。这样,您可以在两次搜索后找到一半。半搜索的目的是提高搜索效率
c语言中的折半查找法是什么原理?
递归,分而治之,其思想是将n个元素分成大致相同数目的两半,取a[n/2]与要找到的x进行比较,如果x=a[n/2],则找到x,算法结束。如果x<a[n/2],那么我们只需要继续在数组a的左半部分搜索x(假设数组元素按升序排列)。如果x>a[n/2],那么我们只需要在数组a的右半部分继续搜索x。
原文标题:c语言二分查找程序代码 C语言中的“折半查找法”是什么?,如若转载,请注明出处:https://www.saibowen.com/news/21262.html
免责声明:此资讯系转载自合作媒体或互联网其它网站,「赛伯温」登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述,文章内容仅供参考。