個人感覺氣泡排序和選擇排序相似,都是通過兩個for迴圈,兩兩比較實現排序過程。但比較的不同之處在於,若有n個數,氣泡排序進行n-1趟比較,第一趟進行n-1次比較,第i趟進行n-i次比較,並且是連續相鄰的兩個數比較,第乙個和第二個數比,再第二個和第三個數比…;而選擇排序是將n個數中第乙個數與剩下所有數比較選擇出最小值,再將第二個數與剩下所有值比較選擇出最小值…下面做具體介紹:
1.氣泡排序
思想:兩個數比較;
方法:連續兩個數的比較,每一趟找出乙個最值;
實現:(vc6.0通過)
#include
void maopao(int s,int n)}}
}void print(int s,int n)
void main()
;print(a,7);
maopao(a,7);
print(a,7);
}
2.選擇排序
思想:兩兩比較;
方法:第乙個數與剩下所有數比較選最值,第二個數與剩下所有值比較選出最值…
實現:(在vc6.0下執行通過)
#include
void xuanze(int s,int n)}}
}void print(int s,int n)
void main()
;print(a,7);
xuanze(a,7);
print(a,7);
}
排序演算法之氣泡排序和選擇排序
通過for迴圈,實現排序 每次迴圈,找到乙個當前的最大值 多次迴圈,完成排序 原理 相鄰的兩個單位,比較儲存的資料 如果第乙個單元的資料較大,就將兩個相鄰單元,交換儲存資料 過程 從起始單元開始比較,第一次迴圈,會選擇出乙個最大值,放在陣列所有單元的最後 之後,每次迴圈,都會比較出乙個本次迴圈的最大...
排序演算法之氣泡排序 選擇排序
排序演算法有很多,包括插入排序,氣泡排序,堆排序,歸併排序,選擇排序,計數排序,基數排序,桶排序,快速排序等。插入排序,堆排序,選擇排序,歸併排序和快速排序,氣泡排序都是比較排序,它們通過對陣列中的元素進行比較來實現排序 其他排序演算法則是利用非比較的其他方法來獲得有關輸入陣列的排序資訊 氣泡排序 ...
排序之氣泡排序和選擇排序
排序的概念與分類 首先我們必須得了解何為排序,使得序列按照乙個關鍵字的有序的排列,這樣的操作就稱為排序。排序用到的解結構與函式 define maxsize 排序數值長度的最大值 typedef struct sqlist 儲存要排序的陣列,r 0 作為乙個臨時變數,length 記錄順序表的長度 ...