c++冒泡排序詳解
說一說冒泡排序
冒泡排序,作為最基本的排序算法,由于原理像冒泡一樣,所以取名為冒泡排序;
我們知道,水泡在上升時,總是密度最小的最先上去,假如一個水層只能容納一個水泡,那么水泡由上到下的排序就是密度逐漸增大的排序。類似的,我們可以實(shí)現(xiàn)一個相似的排序算法,冒泡排序。原理圖(在網(wǎng)上找的)
具體代碼:
#include <iostream> #include <math.h>//待會會用到swap交換函數(shù) using namespace std; int main() { int a[5]; //輸入數(shù)據(jù) for(int i=0;i<5;i++) { cin>>a[i]; } //排序 for(int i=0;i<4;i++) { for(int j=0;j<4-i;j++)//將已經(jīng)升到最高位的剔除 { if(a[j]>a[j+1])swap(a[j],a[j+1]); } } //輸出數(shù)據(jù) for(int i=0;i<5;i++) { cout<<a[i]<<" "; } return 0; }
相關(guān)文章
基于C語言實(shí)現(xiàn)創(chuàng)意多彩貪吃蛇游戲
這篇文章主要介紹了如何利用C語言實(shí)現(xiàn)一個創(chuàng)意多彩貪吃蛇游戲,這是一個純C語言外加easyx庫的繪圖函數(shù)制作而成的有趣小游戲,無需引入額外資源,感興趣的可以動手嘗試一下2022-08-08詳解C++的String類的字符串分割實(shí)現(xiàn)
這篇文章主要介紹了詳解C++的String類的字符串分割實(shí)現(xiàn)的相關(guān)資料,需要的朋友可以參考下2017-07-07C++?Qt開發(fā)之使用QUdpSocket實(shí)現(xiàn)組播通信
Qt?是一個跨平臺C++圖形界面開發(fā)庫,利用Qt可以快速開發(fā)跨平臺窗體應(yīng)用程序,本文將重點(diǎn)介紹如何運(yùn)用QUdpSocket組件實(shí)現(xiàn)基于UDP的組播通信,感興趣的可以了解下2024-03-03C++使用異或運(yùn)算實(shí)現(xiàn)交換兩個數(shù)的值
交換兩個數(shù)的值,通常用利用一個變量來交換數(shù)值,異或交換兩個數(shù)的值是資源開銷最小的方法,不需要中介數(shù),原理簡單的來說就是異或的負(fù)負(fù)得正2018-09-09為什么要學(xué)習(xí)C語言 C語言優(yōu)勢分析
不止一個學(xué)生問到我:“老師,為什么我們的應(yīng)用程序設(shè)計要學(xué)C語言而不是別的?C語言不是已經(jīng)過時了嗎?如果現(xiàn)在要寫一個Windows程序,用VB或Dephi開發(fā)多快呀,用C行嗎?退一萬步,為什么選擇C而不是C++呢?”2013-07-07C語言實(shí)現(xiàn)獲取文件大小與創(chuàng)建修改時間
這篇文章主要為大家詳細(xì)介紹了如何通過C語言實(shí)現(xiàn)獲取文件大小、創(chuàng)建時間與修改時間,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-11-11