選擇排序?qū)W習(xí)筆記

選擇排序的實現(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])
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容