日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

c++冒泡排序代码_C/C++基础之冒泡排序

發布時間:2025/3/21 c/c++ 52 豆豆
生活随笔 收集整理的這篇文章主要介紹了 c++冒泡排序代码_C/C++基础之冒泡排序 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

排序算法作為編程語言中最基礎的算法,在很多高級語言中系統都封裝了sort方法,并提供自定義比較方法排序。但是,這背后是怎么實現的你真的知道嗎?接下來幾篇就給大家講一講C/C++里面最基礎的集中數組排序方法實現吧。

冒泡排序

冒泡排序:顧名思義就是向氣泡冒出來一樣,誰大誰出來,在數組排序里就是誰大誰往后走。就像當初老師給我們排隊的時候一樣,按身高將一個最高個從前挨個比一直往后排

假設現在有一個數組{50,26,74,60,12,1,100}冒泡排序算法是怎么做的呢?

前一個跟后一個去比較大小,如果前一個比后一個大,則前面的跟后面的交換位置,再繼續往后比,知道數組結束。我們看代碼實現:

我們看運行結果:

排序成功。這里需要注意的一點就是第二個循環位置的循環條件for (int j = 0; j < sizeof(arr)/sizeof(int)-1-i; j++)這里一定要注意每比較完一趟后,后面的數已經是最大的了,已經排好了,再進行下一趟的時候我們就不需要再去跟它們比較了。并且由于比較里面已經取了j+1這個下標一定記得在循環條件里減1,不然就會越界

附上原代碼:

#include

#include

using namespace std;

int main()

{

int arr[7] = {50,26,74,60,12,1,100};

//這個循環式控制比較趟數,每趟都需要找出來一個最大的(除了已經排好的)

for (int i = 0; i < sizeof(arr)/sizeof(int)-1; i++)

{

//這個循環就是我在圖示中表示的過程,最大的從前往后滾

for (int j = 0; j < sizeof(arr)/sizeof(int)-1-i; j++)

{

if(arr[j]>arr[j+1])

{

int temp = arr[j];

arr[j] = arr[j+1];

arr[j+1] = temp ;

}

}

}

//我們來輸出一下看看排序成功沒

for (int i = 0; i < sizeof(arr)/sizeof(int); i++)

{

cout<

}

system("pause");

return 0 ;

}

總結

以上是生活随笔為你收集整理的c++冒泡排序代码_C/C++基础之冒泡排序的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。