#冒泡排序
list1=[2,4,5,6,7,8,9,11,30,35,38,41,42] def bubble_sort(list): for i in range(len(list)-1): for j in range(len(list)-1-i): if list[j]>list[j+1]: list[j],list[j+1]=list[j+1],list[j] print(list) list1=[2,4,55,6,78,38,95,11,30,35,38,41,42] bubble_sort(list1)
# Recursive binary search List1 = [ 2 , . 4 , . 5 , . 6 , . 7 , . 8 , . 9 , . 11 , 30 , 35 , 38 is , 41 is , 42 is ] DEF erzcf (Start, STOP, Item, List1): MID = (Start STOP +) // 2 IF Start> STOP: return - . 1 IF Item == List1 [MID]: return MID elif Item > List1 [MID]: return erzcf(mid+1,stop,item,list1) else: return erzcf(start,mid-1,item,list1) print(erzcf(0,len(list1)-1,30,list1))
#二分法
list1=[2,4,5,6,7,8,9,11,30,35,38,41,42] def erfengfa(start,end,item,list1): while start<=end: mid=(start+end)//2 if item==list1[mid]: return mid elif item>list1[mid]: start=mid+1 else: end=mid-1 return -1 print(erfengfa(0,len(list1)-1,30,list1))