C 實現 十大排序演算法之選擇排序

2022-07-08 05:06:13 字數 753 閱讀 6685

給定乙個待排序陣列,找到陣列中最小的那個元素

如果最小元素不是待排序陣列的第乙個元素,則將其和第乙個元素互換

在剩下的元素中,重複1、2過程,直到排序完成。

根據原理設計演算法:

class program

}//當第二個for迴圈完成時,array[min]中儲存的就是當前最小元素

//將array[min]與array[i]交換

int temp = array[i];

array[i] = array[min];

array[min] = temp;}}

//列印輸出陣列

private static void printarray(int array)

console.writeline();

}static void main(string args)

;printarray(array);

choosesort(array);

printarray(array);

console.readkey();}}

輸出結果

十大排序演算法之選擇排序

選擇排序也是一種o n 2 時間複雜度的排序演算法,選擇排序是每一次迴圈都將找到最小值,依次將最小值 次小值分別從左至右進行排序。以下是具體實現過程,其中使用的工具類這篇部落格已經給出,import cn.zjut.util.sorttestutil public class selectsort ...

十大排序演算法 選擇排序

原理 第一次從待排序的資料元素中選出最小 或最大 的乙個元素,存放在序列的起始位置,然後再從剩餘的未排序元素中尋找到最小 大 元素,然後放到已排序的序列的末尾。以此類推,直到全部待排序的資料元素的個數為零。工具類public class utils 用於交換陣列兩個下標的位置 static void...

十大排序演算法之選擇排序2

選擇排序 selection sort 是一種簡單直觀的排序演算法。它的工作原理 首先在未排序序列中找到最小 大 元素,存放到排序序列的起始位置,然後,再從剩餘未排序元素中繼續尋找最小 大 元素,然後放到已排序序列的末尾。以此類推,直到所有元素均排序完畢。2.1 演算法描述 n個記錄的直接選擇排序可...