赞
踩
在前面我们介绍了sort排序函数的使用,按理说,我们没有必要在代码中使用其他的排序方法,但是,在一些情况下,我们只能使用冒泡排序法,而且,冒泡排序法作为一种十分重要的排序方法,其中涉及的思想也十分值得我们学习。
算法:
简单说,冒泡排序法就是在每次排序时两两交换,不断地将较大的一个转移到最后一个。假设有n个元素需要排列,那么经过n-1趟排序后数组有序,每趟排序后,待排序的数组个数减一。
举例:
假设有一组数据 10,12,15,35,25,28,利用冒泡排序后输
出。
代码1:(冒泡排序法进行排序)
#include<iostream> #include<algorithm> using namespace std; int main() { int n; cout<<"请输入要排序的元素个数:"; cin>>n; int a[n]; cout<<"请输入要排序的元素:"; for(int b=0;b<n;b++) cin>>a[b]; for(int i=1;i<n;i++) //进行n-1次排序 { for(int j=0;j<n-i;j++) //每次排序的元素个数相比较上一次减一 { if(a[j]>a[j+1]) swap(a[j],a[j+1]); //进行比较后,较大者后移 } } cout<<"排序后的数字为:" ; for(int c=0;c<n;c++) cout<<a[c]<<" "; return 0; }
运行结果如下:
代码2:(sort函数进行排序)
#include<iostream> #include<algorithm> using namespace std; int main() { int n; cout<<"请输入要排序的元素个数:"; cin>>n; int a[n]; cout<<"请输入要排序的元素:"; for(int b=0;b<n;b++) cin>>a[b]; sort(a,a+7); for(int i=0;i<7;i++) cout<<a[i]<<" "; cout<<"排序后的数字为:" ; for(int c=0;c<n;c++) { cout<<a[c]<<" "; } return 0;
附注:
想在在代码后面标记一下,可以在代码后面加“//”;对于一段代码不不想要但又不想删除,我们可以在前后分别加"/*“和 " */”。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。