C語言排序 C語言冒泡排序算法(Bubble Sort)
操作方法
(01)冒泡排序原理:設要排序的數據記錄到一個數組中,把關鍵字較小的看成“較輕”的氣泡,所以就應該上浮。從底部(數組下標較大的一端)開始,反覆的從下向上掃描數組。進行每一遍掃描時,依次比較“相鄰”的兩個數據,如果“較輕”的氣泡在下面,就要進行交換,把它們顛倒過來。(圖片取自互聯網)
(02)具體實現過程:第一步 輸入數據你可以直接將你所需要的數據存入數組,如int a[5] = {84,83,88,87,61};也可以通過循環輸入for(i = 0 ; i< n ;i++){scanf("%d",&a[i]);}來實現數據輸入數組;
(03)具體實現過程:第二步 寫循環冒泡排序是從最低部掃描(數組下標大的一端);所以內部循環應該從數組下標較大的一方開始 for(j = n - 1 ; j > i ; j--)內部循環確定以後,寫外部循環;for(i = 0; i < n ; i++)for(j = n - 1 ; j > i ; j--) // j>i的是掃描第一遍以後,下標最小的一位數,已經變成最大的一位數
(04)具體實現過程:第二步 寫交換if(a[j - 1] < a[j]){temp = a[j - 1];a[j - 1]=a[j];a[j]=temp;}
(05)C語言實現:#include <stdio.h>int main(){int a[5] = {84,83,88,87,61};int i,j;int temp;printf("按從大到小排序!n");int n = 5 ;//數組最大的下標for(i = 0; i < n ; i++)for(j = n - 1 ; j > i ; j--){if(a[j - 1] < a[j]){temp = a[j - 1];a[j - 1]=a[j];a[j]=temp;}}for(i = 0 ; i < n ; i++){printf("%d ",a[i]);}return 0;}
(06)運行程序,成功截圖如下;
(07)氣泡排序的時間複雜度為0(n^2);
特別提示
個人,如有不對,請多多指教。如有侵犯,請於我聯繫,立馬解決。僅供參考使用,謝謝!
-
stdole32.tlb丟失或損壞怎麼辦
Excel是我們辦公時候最常用的辦公軟件之一,但是有些win7專業版用户在使用Excel的過程中出現了“某個對象程序庫丟失或損壞”的警告,這究竟是怎麼回事呢?雖然有這個錯誤提示,但是Excel大部分功能還是可以正常使用的。下面由小編給大家介紹一下丟失或損壞的解決方法...
-
Excel中身份證號計算年齡公式是什麼
Excel是一款電子表格軟件,直觀的界面、出色的計算功能和圖表工具,再加上成功的市場營銷,使Excel成為最流行的個人計算機數據處理軟件。那麼EXCEL中身份證號計算年齡公式是什麼呢,下面我們就來了解一下。操作方法(01)在單元格中輸入“=2018-MID(D4,7,)”。(02)D4表示身份證...
-
顯卡位寬有哪些,有什麼區別
為了更好的兼容,更好的DIY,我們需要了解一下顯卡的位寬有哪些,有什麼區別。操作方法(01)顯卡位寬,主流有128bit還有64bit、128bit、256bit,顯存的位寬越高,顯卡的性能也就越好。(02)主流顯卡採用128bit位寬,128位的顯存能夠適應大多數遊戲。(03)顯存的帶寬=顯存頻率*顯存位...
-
如何使用QQ雲盤呢?怎麼使用微雲呢?
現在雲盤比較流行,隨着網絡的發展,以前的U盤現在逐步減少,網絡雲盤可以通過網絡盤幫我們保存資料,不需要再隨身攜帶U盤了。下面和大家談下如何使用qq雲盤?操作方法(01)在電腦上登錄QQ。(02)點擊微雲圖標進入微雲。(03)日常筆記可以在“筆記”欄打開,然後點擊新建一個文件。...