氣泡排序是屬於比較類的排序方式,簡單易懂,但是效率不是很高,不及快排。
#include "實現結果:stdio.h
"#include
"time.h
"void bubble(int *a,int len);//
排序
void swap(int *p1,int *p2);//
交換數值
intmain()
;
int length = sizeof(a)/sizeof(int);//
求陣列長度
printf(
"原序列為:");
for(int i=0;i)
bubble(a,length);
printf(
"\n氣泡排序後:");
for(int i=0;i)
printf("\n
");finish=clock();
totaltime=(double)(finish-start)/clocks_per_sec;
printf(
"\n程式執行的時間為: %.5f 秒\n
",totaltime);
}void swap(int *p1,int *p2)//
注意交換數值函式,呼叫時傳入引數是位址,實際就是交換兩數值的位址
void bubble(int *a,int len)//
陣列名表示陣列第乙個元素的位址,所以用int *a }}
演算法學習之氣泡排序
基本思想 陣列 6,5,7,3,8,2 按從公升序排列。依次比較相鄰的兩個數,前乙個數比後乙個數大則交換位置,得到最大的數在最後。第一輪比較完後的結果為 5,6,3,7,2,8 第二輪比較得出倒數第二的數字 5,3,6,2,7,8 依次類推 package com.example.demo.othe...
演算法學習之氣泡排序
氣泡排序 bubblesort 迴圈遍歷要排序的元素,依次比較相鄰的兩個元素,如果他們的順序錯誤就把他們交換位置。每一次迴圈遍歷,直到陣列的末尾。因為越大的元素會經過交換到陣列的前端 公升序或降序排列 整個過程就像氣泡最終會上浮到頂端一樣,稱之為 氣泡排序 原理步驟 1 比較相鄰的兩個元素。如果第乙...
演算法學習之氣泡排序法
sub bubblesorted dim k as integer randomize with worksheets sheet1 for k 1 to 100 cells k,1 int rnd 10 1 在第一列生成100個隨機整數 next for i 1 to 99 for j i 1 t...