插入排序
import time List = [31,41,59,26,41,58,100,33,52,67,54,32,11] print List start = time.clock() for k in range(1,len(List)): i = k-1 while i>=0 : if List[k] < List[i]: List[k],List[i] = List[i],List[k] k=k-1 i=i-1 else : break print round(time.clock()-start,10) print List print '-'*40 List = [31,41,59,26,41,58,100,33,52,67,54,32,11] print List start = time.clock() for k in range(1,len(List)): i = k-1 while i>=0 and List[k]<List[i]: List[k],List[i] = List[i],List[k] k=k-1 i=i-1 print round(time.clock()-start,10) print List print '-'*40 List = [31,41,59,26,41,58,100,33,52,67,54,32,11] print List start = time.clock() for k in range(1,len(List)): i = k-1 key = List[k] while i>=0 and key < List[i]: List[i+1]= List[i] i=i-1 List[i+1]=key print round(time.clock()-start,10) print List print '-'*40 List = [31,41,59,26,41,58,100,33,52,67,54,32,11] print List start = time.clock() List = sorted(List) print round(time.clock()-start,10) print List print '-'*40
跟自带的差好多。