//冒泡排序:每一轮排序后最大(或最小)的数将移动到数据序列的最后
//理论上总共要进行n(n-1)/2次交换。稳定 慢
#include<iostream>
#include<fstream>
#define N 10
using namespace std;
int main()
{
ifstream cin("content.txt");
int arr[N];
for(int i=0;i<N;i++){
cin>>arr[i];
}
for(int i=0;i<N-1;i++)
for(int j=0;j<N-i-1;j++){//因为N-i-1后面已经有序,不用再相邻比较交换
if(arr[j]<arr[j+1])
{
int temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
//理论上总共要进行n(n-1)/2次交换。稳定 慢
#include<iostream>
#include<fstream>
#define N 10
using namespace std;
int main()
{
ifstream cin("content.txt");
int arr[N];
for(int i=0;i<N;i++){
cin>>arr[i];
}
for(int i=0;i<N-1;i++)
for(int j=0;j<N-i-1;j++){//因为N-i-1后面已经有序,不用再相邻比较交换
if(arr[j]<arr[j+1])
{
int temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;

本文展示了如何使用C++实现冒泡排序的倒序版本,通过两层循环结构,每次比较并交换相邻元素,使最大的数逐渐移动到序列末尾。此算法稳定但效率较低。
最低0.47元/天 解锁文章
1817

被折叠的 条评论
为什么被折叠?



