c++之排序篇2:冒泡排序法



#include <iostream>

//函數swap因為要交換兩個數,所以要用引用“&”
void swap(int &a,int &b)//冒泡排序法因為需要頻繁的比較兩個數組的大小,所以定義一個函數使用起來比較方便
{
int temp ;
temp = a;
a = b;
b = temp;
}
void BubbleSort(int *a ,int n)
{
for(int i = 0;i<n-1;i++)
{
for(int j =0;j<n-i-1;j++)
{
if(a[j]<a[j+1])//此處若為“<”則為降序排列,若為“>”則為升序排列
swap(a[j],a[j+1]);
}
}

}
int main()
{
int a[] = {5,4,9,8,7,6,0,1,3,2};
int len = sizeof(a)/sizeof(a[0]);
BubbleSort(a,len);
for(int i = 0;i<len;i++)
{
printf("%d ",a[i]);
}
return 0;
}

參考文獻:《程序員面試筆試寶典》何昊等人編著

注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
  © 2014-2022 ITdaan.com 联系我们: