冒泡排序
a = [1,4,2,5,22,3]
n = len(a)
for i in range(1,n):
for j in range(n-i):
if a[j] < a[j+1]:
a[j],a[j+1] = a[j+1],a[j]
print(a)
选择排序
a = [1,4,2,5,22,3]
n = len(a)
for i in range(1,n):
min = i-1
for j in range(i,n):
if a[min] < a[j]:
min=j
if min != i-1:
a[min],a[i-1] = a[i-1],a[min]
print(a)
二分查找(折半查询)
def Solution(alist):
start = 0
end = len(a) - 1
num = 5
while start <= end:
mid = (start+end)//2
if num == a[mid]:
print('num对应的下标的值是:%d'% mid)
return mid
elif num > a[mid]:
start = mid + 1
elif num < a[mid]:
end = mid - 1
print('不存在')
a = [1,2,3,4]
Solution(a)