C++:冒泡排序

案例描述:对数组内元素进行排序

思路:
1. 比较相邻的元素。如果第一个比第二个大,就交换他们两个。
2. 对每一对相邻元素做同样的工作,执行完毕后,找到第一个最大值。
3. 重复以上的步骤,每次比较次数-1,直到不需要比较
#include <iostream>
using namespace std;
int main() {
    
    
	//定义数组
	int arr[8] = {
    
     111,25,56,254,256,45,15,35 };
	//临时存储
	int num = 0;
	//末尾下标
	int end = sizeof(arr) / sizeof(arr[0]) - 1;
	cout << end << endl;
	//总共排序轮数为元素个数-1=end
	for (int i = 0; i < end; i++) {
    
    
		//内层循环
		for (int j = 0; j < end - i - 1; j++) {
    
    
			//将数组进行升序排序
			if (arr[j] > arr[j + 1]) {
    
    
				num = arr[j];
				arr[j] = arr[j + 1];
				arr[j + 1] = num;
			}
		}
	}
	for (int i = 0; i < end; i++) {
    
    
		cout << arr[i] << endl;
	}
}

猜你喜欢

转载自blog.csdn.net/Alan_King79/article/details/124946152
今日推荐