python二分查找和冒泡排序

二分查找(折半查找)
1,二分查找的前提是有序:
例如 a=[3,2,5,7,5,4,7,4,2,1]
先排序:
先拿出列表中的那个元素mid,和输入的num进行比较。
如果num大于mid, 表明num在mid—end里面
如果num小于mid, 表明num在num—mid里面
二分查找:
先排序

a=[3,2,5,7,5,4,7,4,2,1]
num=int(input('请输入一个数:'))
a.sort()
first=0
end=len(a)-1
while first<=end:
    mid=(first+end)//2
    if a[mid]==num:
        print('找到了')
        break
    elif a[mid]>num:
        end=mid-1
    elif a[mid]<num:
        first=mid+1
else:
    print('没找到')

冒泡排序
在这里插入图片描述

list_01=[2,5,1,4,1,3]
ysgs=len(list_01)
for i in range(0,ysgs-1):#i表示轮
    for j in range(0,ysgs-i-1):#j表示比较次数
        if list_01[j]>list_01[j+1]:
            list_01[j],list_01[j+1]=list_01[j+1],list_01[j]
print(list_01)

猜你喜欢

转载自blog.csdn.net/python20180218/article/details/88581874