選擇排序的實現(xiàn)思路,其實還是比較簡單的。首先以arr[0]里面的數(shù)據(jù)作為標(biāo)桿,爾后去挨個與后面的數(shù)據(jù)進行比較,一直找到最小的那個數(shù),最后交換兩個數(shù)的位置,并將符合要求的數(shù)從原有的數(shù)據(jù)項中移除,再開始下一輪的選擇排序;直到所有數(shù)據(jù)都在正確的位置上。
Python的代碼清新簡潔,具體代碼如下:
def findSmallest(arr):
smallest = arr[0];
smallest_index = 0;
for i in range(1,len(arr)):
if arr[i]<smallest:
smallest=arr[i]
smallest_index=i
return smallest_index
def selectionSort(arr):
newArr=[]
for i in range(len(arr)):
smallest = findSmallest(arr)
newArr.append(arr.pop(smallest))
return newArr
print selectionSort([5,3,6,2,10])