程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> 關於C++ >> c++選擇排序詳解

c++選擇排序詳解

編輯:關於C++

c++選擇排序詳解。本站提示廣大學習愛好者:(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;  
} 

仔細研究發現,其和冒泡排序的方法差距不大。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved