冒泡排序实现代码

  实现了冒泡排序和优化版的冒泡排序代码,具体原理可以自行google一下。

#include<iostream>
#define N 10
using namespace std;
void bubblesort(int arr[],int n)
{
	for(int i = 0;i< n;i ++)
		for(int j = 0;j < n-i;j++)
			if(arr[j] > arr[j+1])
			{
				int tmp = arr[j];
				arr[j] = arr[j+1];
				arr[j+1] = tmp;
			}
}
void better_bubblesort(int arr[],int n)
{
	for(int i = 0;i< n;i ++)
	{
		bool flag = true;
		for(int j = 0;j < n-i;j++)
			if(arr[j] > arr[j+1])
			{
				flag = false;
				int tmp = arr[j];
				arr[j] = arr[j+1];
				arr[j+1] = tmp;
			}
		if(flag)
			break;
		
	}	
}
int main()
{
	int a[N] = {5,7,4,2,9,0,8,1,3,6};
	better_bubblesort(a,N);
	for(int i = 0;i < N;i ++)
 		cout<<a[i]<<" ";
	cout<<endl;
	return 0;	
}

  

posted on 2014-12-23 23:41  橙风歌  阅读(481)  评论(0编辑  收藏  举报

导航