C語言基礎 氣泡排序

2021-06-13 20:20:28 字數 849 閱讀 5069

氣泡排序演算法(小——>大)描述:

實質——小的數向上冒,大的數向下沉

示例:對陣列進行從大到小的冒泡法排序

對於陣列的array[10]

第一次遍歷:從陣列的第乙個索引值開始,與其向下相鄰的數進行比較——7與8進行比較,7<8

不進行位置交換,將比較索引值+1,即比較值的索引上的陣列值為8,向下相鄰值比較——8與9進行比較,8<9,不進行值的交換

將比較索引值+1,即比較值的索引上的陣列值為9,向下相鄰值比較——8與9進行比較,9>6,進行值的交換

直到索引值與陣列的索引值的最大值相等,則第一次遍歷結束

第二次遍歷

遍歷n-1次

······

#include "stdio.h"

#define size 10

int main( void )

;//例項化陣列a[size]

int pass;//遍歷次數

int i;//用來交換數值的索引

int hold;//用來進行交換的數值引數

//列印最開始的陣列值

printf( "data items in origional order\n" );

for( i = 0; i < size; i++ )

//遍歷

for( pass = 1; pass < size; pass++ ) }}

//列印經過氣泡排序之後的陣列值

printf( "\ndata items in assending order\n" );

for( i = 0; i printf( "\n" );

return 0;

}

c 基礎 氣泡排序

氣泡排序 讓陣列中的元素兩兩比較 第i個與第i 1個比較 經過n i 1 遍兩兩比較,陣列中的元素能按照我們預期的規律排序。要從大到小排序,我們進行兩兩比較的時候用 要從小到大排序,我們進行兩兩比較的時候用 第i個與第i 1個比較,滿足條件時,兩數交換值 例 有如下資料 10,20,30,40,50...

C語言 氣泡排序

氣泡排序 兩兩比較相鄰記錄的關鍵碼,如果反序則交換,直到沒有反序記錄為止 將整個待排序的記錄序列分成有序區和無序區,初始時有序區為空,無序區包括所有待排序的記錄 對無序區從前向後依次將相鄰記錄的關鍵碼進行比較,若反序則交換,從而使得關鍵碼小的記錄向前移,關鍵碼大的向後移 像水中的氣泡,體積大的先浮起...

氣泡排序 C語言

c語言是比較簡單基礎的排序方式,排序效率並不高,但是很穩定。通過rand隨機生產10個小於20的數來測試排序。氣泡排序 include include include void bubblesortbetter int a,int n 改進 if flag 0 break void bubbleso...