Mega Code Archive

 
Categories / Delphi / Algorithm Math
 

Selection Sort

Title: Selection Sort Question: Selection sort algorithm Answer: { Selection Sort An elementary sorting algorithm that is designed to minimize the number of exchanges that are performed. It works by making n-1 passes over the unsorted portion of the array, each time selecting the largest value. This value is then moved into its final sorted position with a single exchange. } procedure SelectionSort(Items: TStrings); var i, n, maxIndex, topIndex: integer; Dummy: string; begin n := Items.Count; for topIndex := n - 1 downto 1 do begin maxIndex := topIndex; for i := 0 to topIndex - 1 do if Items[i] Items[maxIndex] then maxIndex := i; Dummy := Items[topIndex]; Items[topIndex] := Items[maxIndex]; Items[maxIndex] := Dummy; end; end;