冒泡排序
最近复习了一下排序算法,第一个就是冒泡排序。
思想比较简单。就是双重循环,每次让最大的一个数冒出来,然后在其余的数据中继续循环冒泡,代码如下
#include <iostream>
#include <cstdlib>
using namespace std;
#define N 20
int A[N];
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
/*
冒泡排序
*/
void bubble_sort(int *s,int n) {
for(int k=1; k<n; k++) {
for(int i=1; i<n; i++) {
if(A[i]<A[i-1]) {
int temp=A[i];
A[i]=A[i-1];
A[i-1]=temp;
}
}
}
}
int main(int argc, char** argv) {
for (int i = 0; i < N; i++)
{
A[i] = rand();
}
bubble_sort(A, N);
for (int i = 0; i < N; i++)
{
cout<<A[i]<<" ";
}
return 0;
}