冒泡排序
来源:互联网 发布:淘宝防举报防排查 编辑:程序博客网 时间:2024/06/07 15:07
flag冒泡排序,
代码:
#include <cstdio>#include <algorithm>#include <iostream>using namespace std;int Sort(int A[],int n) //flag标记是否存在 顺序相反的相邻元素{ int sum=0;bool flag=1; //存在顺序相反的相邻元素for(int i=0;flag;i++){flag=0; for(int j=n-1;j>=i+1;j--) //j>=i+1因为要和A[i]位置的元素比较 { if( A[j]<A[j-1] ) { swap( A[j] , A[j-1] ); flag=1; sum++;}}}return sum;} int main(){ int n,sw,A[105];cin>>n;for(int i=0;i<n;i++)scanf("%d",&A[i]);sw=Sort( A,n ); //返回的值sum 付给swfor(int i=0;i<n;i++)printf("%d%c",A[i],i==n-1?'\n':' ');cout<<sw;return 0;} /*输入: 55 3 2 4 1输出:1 2 3 4 58*/
之前我一直用这样的写法,今天看到这个就想着整理下来了:
#include <cstdio>#include <algorithm>#include <iostream>using namespace std;int Sort(int A[],int n){int sum=0;for(int i=0;i<n-1;i++) for(int j=i+1;j<n;j++) { if( A[i]>A[j] ) { swap( A[i] , A[j] ); sum++;} } return sum;}int main(){int n,sw,A[105];cin>>n;for(int i=0;i<n;i++)cin>>A[i];sw = Sort( A , n );for(int i=0;i<n;i++)printf("%d%c",A[i],i==n-1?'\n':' ');cout<<sw;return 0;}
阅读全文
0 0
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- Java Jsp使用
- Java jsp 自定义标签
- WebSphere V8.5 静默安装升级(二)-使用响应文件静默安装(生成相应文件)以及managesdk管理SDK
- MySQL入门
- Java jdbc入门
- 冒泡排序
- Java BeanUtils 组件 使用
- jdbc 连接池
- Java 监听器,国际化
- Java 文件上传与下载、email
- Java 反射、注解
- 命令行导入导出数据库文件
- android3.0碰到问题记录
- Java 使用Log4J进行日志操作