冒泡排序实现代码

  实现了冒泡排序和优化版的冒泡排序代码,具体原理可以自行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;	

}

  

你可能感兴趣的:(冒泡排序)