c++選擇排序詳解。本站提示廣大學習愛好者:(c++選擇排序詳解)文章只能為提供參考,不一定能成為您想要的結果。以下是c++選擇排序詳解正文
作者:傻蝸牛
選擇排序(Selection sort)是一種簡單直觀的排序算法。它的工作原理是每一次從無序組的數據元素中選出最小(或最大)的一個元素,存放在無序組的起始位置,無序組元素減少,有序組元素增加,直到全部待排序的數據元素排完。選擇排序,作為八大經典算法之一,雖不如插入,快速,希爾等排序高效,但其結構簡單,思路清晰,適合新手理解算法, 了解排序,適合數據較少時的排序情況。
如下是選擇排序的圖解原理
如果說冒泡排序是頂向下,那麼選擇排序就是由底向上了,先解決第一個數,再解決第二個數,依次解決整個數組的排序
如下是全部代碼的實現
#include <iostream> #include <math.h>//待會會用到swap交換函數 using namespace std; int main() { int a[10]; //輸入數據 for(int i=0;i<10;i++) { cin>>a[i]; } //排序 for(int i=0;i<10;i++) { for(int j=i;j<10;j++) { if(a[i]>a[j])swap(a[i],a[j]); } } //輸出數據 for(int i=0;i<10;i++) { cout<<a[i]<<" "; } return 0; }
仔細研究發現,其和冒泡排序的方法差距不大。