選擇排序(Selection sort)是一種簡單直觀的排序算法振乏。它的工作原理是每一次從待排序的數據元素中選出最姓鞍印(或最大)的一個元素暮蹂,存放在序列的起始位置,直到全部待排序的數據元素排完派敷。
時間復雜度
? ? ??假設有n個數的一個鏈表赴穗,為了確定第一個位置的數,需要比較n-1次;確定第2個位置的數需要比較n-2次般眉,依次類推最后一個位置的數需要比較0次了赵。那么總的比較次數N=(n-1)+(n-2)+...+1=n*(n-1)/2。
?/---------------代碼部分------------------/
? ? ? 這個程序很好的實現了選擇排序的步驟甸赃。首先柿汛,你可以用r鍵重新生成一個亂序的數列;當按下s鍵時埠对,開始采用選擇排序進行數列的排序络断。排序的過程中演示了如何從第一個位置開始為當前排序位置選擇最小值,并在一輪比較之后將當前排序位置和最小值位置進行數列值的交換项玛。
? ? ? 通過這個程序貌笨,小朋友可以很好的理解選擇排序的算法過程。