【题目链接】

ybt 2039:【例5.6】冒泡排序

【题目考点】

1. 冒泡排序

【解题思路】

冒泡排序生成降序序列

【题解代码】

解法1:容易记忆的版本

  • 数组下标1~n:
    i从1到n-1,j从1到n-i
#include<bits/stdc++.h>
using namespace std;
int main()
{int n, a[25];cin >> n;for(int i = 1; i <= n; ++i)cin >> a[i];for(int i = 1; i <= n-1; ++i)for(int j = 1; j <= n-i; ++j){if(a[j] < a[j+1])swap(a[j], a[j+1]);}for(int i = 1; i <= n; ++i)cout << a[i] << endl;return 0;
}
  • 数组下标0~n-1
    i从0到n-1,j从0到n-i-1(这里的‘到’指小于)
#include<bits/stdc++.h>
using namespace std;
int main()
{int n, a[25];cin >> n;for(int i = 0; i < n; ++i)cin >> a[i];for(int i = 0; i < n-1; ++i)for(int j = 0; j < n-i-1; ++j){if(a[j] < a[j+1])swap(a[j], a[j+1]);}for(int i = 0; i < n; ++i)cout << a[i] << endl;return 0;
}

解法2:

符合冒泡概念的版本

  • 数组下标1~n:
#include<bits/stdc++.h>
using namespace std;
int main()
{int n, a[25];cin >> n;for(int i = 1; i <= n; ++i)cin >> a[i];for(int i = n; i >= 2; --i)//这次循环要确定的数的最终位置for(int j = 1; j <= i - 1; ++j)//要交换的数对的第一个数{if(a[j] < a[j+1])swap(a[j], a[j+1]);}for(int i = 1; i <= n; ++i)cout << a[i] << endl;return 0;
}
  • 数组下标0~n-1
#include<bits/stdc++.h>
using namespace std;
int main()
{int n, a[25];cin >> n;for(int i = 0; i < n; ++i)cin >> a[i];for(int i = n-1; i >= 1; --i)for(int j = 0; j <= i-1; ++j){if(a[j] < a[j+1])swap(a[j], a[j+1]);}for(int i = 0; i < n; ++i)cout << a[i] << endl;return 0;
}

信息学奥赛一本通 2039:【例5.6】冒泡排序相关推荐

  1. 【例1】 0/1背包《信息学奥赛一本通》【解法一】 02

    /* [例1] 0/1背包<信息学奥赛一本通>[解法一] 02 http://ybt.ssoier.cn:8088/problem_show.php?pid=1267 */ #includ ...

  2. 【例8】合唱队形(《信息学奥赛一本通第五版》)

    /* [例8]合唱队形(<信息学奥赛一本通第五版>) http://ybt.ssoier.cn:8088/problem_show.php?pid=1264 [问题描述] N位同学站成一排 ...

  3. 信息学奥赛一本通 2021:【例4.6】最大公约数

    [题目链接] ybt 2021:[例4.6]最大公约数 [题目考点] 1. while循环 2. 求最大公约数 辗转相减法 辗转相除法 [解题思路] 解法1:枚举 取较小数字,从该数字的值开始从大到小 ...

  4. 信息学奥赛一本通(2032:【例4.18】分解质因数)

    2032:[例4.18]分解质因数 时间限制: 1000 ms         内存限制: 65536 KB 提交数: 582     通过数: 376 [题目描述] 把一个合数分解成若干个质因数乘积 ...

  5. 信息学奥赛一本通——2062:【例1.3】电影票

    2062:[例1.3]电影票 时间限制: 1000 ms         内存限制: 65536 KB 提交数: 57341     通过数: 34230 [题目描述] 已知一位小朋友的电影票价是10 ...

  6. 信息学奥赛一本通 1278:【例9.22】复制书稿(book) | 洛谷 P1281 书的复制

    [题目链接] ybt 1278:[例9.22]复制书稿(book) 洛谷 P1281 书的复制 [题目考点] 1. 动态规划:线性动规 [解题思路] 该题可以抽象为:将由m个数字构成的序列分成k个子段 ...

  7. 信息学奥赛一本通1267:【例9.11】01背包问题(二维dp与滚动数组优化)

    [题目描述] 一个旅行者有一个最多能装 MM 公斤的背包,现在有 nn 件物品,它们的重量分别是W1,W2,...,WnW1,W2,...,Wn,它们的价值分别为C1,C2,...,CnC1,C2,. ...

  8. 信息学奥赛一本通C++语言-----2036:【例5.3】开关门

    [题目描述] 宾馆里有n(2≤n≤1000)n(2≤n≤1000) 个房间,从1∼n1∼n 编了号.第一个服务员把所有的房间门都打开了,第二个服务员把所有编号是22 的倍数的房间"相反处理& ...

  9. 信息学奥赛一本通——2068:【例2.6】鸡兔同笼

    大家好(๑╹◡╹)ノ" 这里是小蒟蒻 一天没更新了呢! 今天给大家带来<信息学奥赛一本通--2068:[例2.6]鸡兔同笼> 题目: 2068:[例2.6]鸡兔同笼 时间限制: ...

最新文章

  1. 清华医工结合项目及三创项目与天津市27家重点医院对接
  2. Neuron:迄今为止最大的颗粒细胞数据,发现海马齿状回神经元可过滤并放大空间信息...
  3. ARIMA模型实例讲解——网络流量预测可以使用啊
  4. Centos 7下搭建WordPress
  5. git提交异常 fatal: LF would be replaced by..
  6. 超级硬盘数据恢复软件 4.6.5.0注冊码破解版
  7. SiamRPN代码讲解,推理测试讲解
  8. Java第一天笔记01——jdk8的安装与环境变量的配置
  9. html可编辑的表格
  10. GVM 内存结构 垃圾回收
  11. 什么是网关模块 工业物联网以太网网关WiFi模块的选型
  12. set echo on 与set echo off
  13. 九宫格图案解锁、支付宝解锁、微信钱包解锁
  14. MySql 根据身份证号判断年龄所属省份与性别男女
  15. 学python第一弹 用IDLE启动python
  16. Task 02 re(2.3)
  17. 牛客网C语言刷题(指针篇)
  18. 【聊天机器人】深度学习构建检索式聊天机器人原理
  19. Win10体验优化策略
  20. 轻松理解递归的基本思想

热门文章

  1. 也谈C#之Json,从Json字符串到类代码
  2. Ubuntu 12.04安装Microsoft lifecam studio摄像头
  3. 产品经理最重要的3个能力
  4. 手把手教你用ECharts画折线图
  5. S5PV210裸机之时钟
  6. pc css框架,PC端框架—semantic ui
  7. 不得不说,其实你的性能优化手段已经过时了
  8. 在创业公司工作是一种什么样的体验?
  9. 消息队列之事务消息,RocketMQ 和 Kafka是如何做的?
  10. 如何区分普通感冒流感和新型冠状病毒肺炎?