简单的冒泡排序 ---C++版

冒泡排序
从左向右扫描数据,选择最大的数据,放在右边。
要点:比较相邻的两个数,如果左边的数大于右边的数就进行交换

#include<iostream>
using namespace std;

void BubbleSort(int list[], int n);   //写函数的声明,要排序的数据放在一个数组里,数据的个数用n表示
int main()
{
	int a[] = { 2,4,6,8,0,1,3,5,7,9 };
	BubbleSort(a, 10);
	for (int k = 0; k < 10; k++)	
		cout << a[k] << " ";
		cout << endl;	
	return 0;
}
void BubbleSort(int list[], int n)    //写函数的定义
{
	for (int i = 0; i < n-1; i++)     //10个数据扫描9遍,最后一个不用扫描,所以n个数据扫描n-1遍
	{
		for (int j = 0; j < n-i-1; j++)
		{
			if (list[j] > list[j + 1])    //如果左边的大于右边的,进行交换
				std::swap(list[j], list[j + 1]);   //当时把j写成i,运行不出来,std:: 可以省略
		}
	}
}


//16-21  冒泡排序只要4行代码
//每一次扫描的过程中选择最大的,把它放到右边

定期更新简单易懂的算法知识以及专业知识技能,点下关注喽

猜你喜欢

转载自blog.csdn.net/weixin_45488131/article/details/106789038
今日推荐