c++選擇排序詳解
選擇排序,作為八大經(jīng)典算法之一,雖不如插入,快速,希爾等排序高效,但其結(jié)構(gòu)簡單,思路清晰,適合新手理解算法, 了解排序,適合數(shù)據(jù)較少時(shí)的排序情況。
如下是選擇排序的圖解原理

如果說冒泡排序是頂向下,那么選擇排序就是由底向上了,先解決第一個(gè)數(shù),再解決第二個(gè)數(shù),依次解決整個(gè)數(shù)組的排序
如下是全部代碼的實(shí)現(xiàn)
#include <iostream>
#include <math.h>//待會(huì)會(huì)用到swap交換函數(shù)
using namespace std;
int main()
{
int a[10];
//輸入數(shù)據(jù)
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]);
}
}
//輸出數(shù)據(jù)
for(int i=0;i<10;i++)
{
cout<<a[i]<<" ";
}
return 0;
}
仔細(xì)研究發(fā)現(xiàn),其和冒泡排序的方法差距不大。
相關(guān)文章
C語言數(shù)據(jù)結(jié)構(gòu)二叉樹簡單應(yīng)用
這篇文章主要介紹了C語言數(shù)據(jù)結(jié)構(gòu)二叉樹簡單應(yīng)用的相關(guān)資料,需要的朋友可以參考下2017-05-05
C語言安全編碼之?dāng)?shù)值中的sizeof操作符
這篇文章主要介紹了C語言安全編碼的數(shù)值中的sizeof操作符用法注意事項(xiàng),需要的朋友可以參考下2014-07-07
C++原地刪除有序數(shù)組重復(fù)項(xiàng)的N種方法
給定一個(gè)排序數(shù)組,你需要在原地刪除重復(fù)出現(xiàn)的元素,使得每個(gè)元素只出現(xiàn)一次,返回移除后數(shù)組的新長度,不要使用額外的數(shù)組空間,你必須在 原地 修改輸入數(shù)組 并在使用O(1)額外空間的條件下完成,故本文介紹了C++原地刪除有序數(shù)組重復(fù)項(xiàng)的N種方法,需要的朋友可以參考下2025-03-03
Win32下C++實(shí)現(xiàn)快速獲取硬盤分區(qū)信息
這篇文章主要為大家詳細(xì)介紹了Win32下C++如何實(shí)現(xiàn)快速獲取硬盤分區(qū)信息,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2025-03-03
Qt基于定時(shí)器實(shí)現(xiàn)動(dòng)圖展示效果
這篇文章主要為大家詳細(xì)介紹了Qt基于定時(shí)器實(shí)現(xiàn)簡單動(dòng)圖展示,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-06-06

