冒泡排序使我们经常遇到的排序问题。
其原理非常简单,自下往上走,遇到比它大的则交换位置(升序排列,若是小于发上交换,则是降序),直到比较到最后一个为止。
#include <iostream>
#include <string.h>
using namespace std;
void print(int n,int arr[])//定义数组输出函数
{
for(int j=0;j<n;j++)
{
cout<<arr[j]<<' ';
}
}
void maopao(int arr[],int n)//定义冒泡排序函数
{
for(int j=0;j<n-1;j++)//最后一个数时,不用比较
{
for(int i=0;i<n-j-1;i++)//每个数要比较n-j-1次
{
if(arr[j]>arr[j+1])
{
int temp;
temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
print(n,arr);
}
int main()//主函数
{
int arr[8]={1,2,2,3,4,54,7,10};
maopao(arr,8);
return 0;
}
输出结果:
1 2 2 3 4 7 10 54
本文介绍了冒泡排序的基本原理和实现过程,通过一个C++代码示例展示了冒泡排序如何对一组整数进行升序排列。冒泡排序是一种简单的排序算法,通过不断交换相邻的错误顺序元素来逐步完成排序。
2万+

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



