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;
}

参考文献:《程序员面试笔试宝典》何昊等人编著

猜你喜欢

转载自blog.csdn.net/ding977921830/article/details/52415198
今日推荐