排序与查找,搜索排序规则分析
有序搜索、无序搜索、二分搜索法汇总基本排序方法:有序搜索、无序搜索、二分搜索法汇总无序搜索有序搜索二分搜索法
事实上,大多数搜索方法都是通过定义初始发现=假,然后一旦发现,发现就变成真:
定义顺序(列表,项目):
位置=0
发现=假
当发布len(列表)且未找到时:
if list[pos]==item:
发现=真
否则:
位置=位置1
发现退货
打印(顺序([1,3,5],2))
有序搜索是最好的情况。有序搜索只需要比较一次就知道目标元素不在列表中。平均下来需要比较n/2次,但算法复杂度还是O(n)。简而言之,只有当列表中没有目标元素时,有序搜索才会提高搜索速度。
定义许由(列表,项目):
位置=0
发现=假
停止=假
当位置len(列表)且未找到且未停止时:
if list[pos]==item:
发现=真
否则:
如果列出[位置]项目:
停止=真
否则:
位置=位置1
发现退货
打印(许由([1,3,5,7],3))
第二,先在中间搜索,如果目标元素大,就在右边搜索;相反,看左边:
def erfenchazhao(列表,项目):
first=0
last=len(list)-1
发现=假
while first=last且未找到:
中点=(第一个最后一个)//2
打印(中点)
if list[中点]==item:
发现=真
否则:
如果项目列表[中点]:
最后=中点-1
否则:
第一个=中点1
发现退货
print(二分差兆([1,5,6,7,9],5))
来自博客作者为梦想原创作品。转载请联系作者取得授权,否则将追究法律责任。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。