题解 | #C++冒泡排序#
C++冒泡排序
https://www.nowcoder.com/practice/eb72dada09de43ceacf93f9a143ee321
首先,冒泡排序是什么?
冒泡排序(Bubble Sort)是一种简单的排序算法,它重复地遍历要排序的列表,比较相邻的两个元素,并交换它们的位置,直到整个列表都是有序的。这个算法的名字由于越小的元素会像气泡一样逐渐“浮”到列表的顶端。
下面是冒泡排序的基本步骤:
- 从列表的第一个元素开始,比较相邻的两个元素。
- 如果第一个元素比第二个元素大,交换它们的位置。
- 移动到下一对相邻元素,重复步骤 2。
- 重复上述步骤,直到到达列表的末尾。此时,最大的元素已经“冒泡”到列表的最后。
- 重复上述步骤,但不包括已经排序好的元素。
这道题目,要求升序排列。
#include <iostream> using namespace std; int main() { int arr[6] = { 0 }; int len = sizeof(arr) / sizeof(int); for (int i = 0; i < len; i++) { cin >> arr[i]; } // write your code here...... for(int i=1;i<len;i++) //冒泡排序排数组长度减一次(你得知道冒泡排序是什么) { for(int j=0;j<len-i;j++) //第一次循环都把最大的那个值放在了最后面了,所以第二次循环最后面的那个数就不用比较了,后面的循环是一个道理 { if(arr[j]>arr[j+1]) { int t=arr[j]; arr[j]=arr[j+1]; arr[j+1]=t; } } } for(int i=0;i<len;i++) { cout<<arr[i]<<' '; } return 0; }