当前位置: 首页 > news >正文

浙大数据结构:10-排序6 Sort with Swap(0, i)

这道题用了数环的思想,MOOC最后视频中也有相关介绍,思想还是很巧妙的
机翻
在这里插入图片描述

1、思想

在这里插入图片描述

2、 主函数

先把数据存进来,然后从头开始遍历,如果该位置数不对则anwser++,然后遍历整个环,一直加anwser,如果有0则answer–。最后输出

#include <iostream>
#include<vector>
using namespace std;
#define endl '\n'int main()
{std::ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);int n;cin>>n;vector<int> a(n);for(int i=0;i<n;i++)cin>>a[i];int anwser=0;int lastnum;for(int i=0;i<n;i++){if(a[i]!=i){anwser++;while(a[i]!=i){if(a[i]==0)anwser--;else anwser++;lastnum=a[i];a[i]=i;i=lastnum;}}}  cout<<anwser;return 0;
}
http://www.lryc.cn/news/460856.html

相关文章:

  • 基于vue框架的的爱心捐赠物资信息系统85gsu(程序+源码+数据库+调试部署+开发环境)系统界面在最后面。
  • AI对抗AI:如何应对自动化攻击新时代?
  • 【微服务】微服务注册:构建灵活的服务管理机制
  • AsyncTask的工作原理和缺陷
  • 【React】事件绑定的方式
  • Android ImageView scaleType使用
  • 【PhpSpreadsheet】ThinkPHP5+PhpSpreadsheet实现批量导出数据
  • Python剪辑视频
  • LabVIEW提高开发效率技巧----高效文件I/O
  • 影刀RPA接口_查询应用主流程参数结构
  • 2d实时数字人聊天语音对话使用案例,对接大模型
  • LeetCode | 69.x的平方根
  • 使用Windows创建一个MFC应用【带界面】
  • springboot整合lombok
  • 使用Arcgis批量自动出图
  • Web Worker加载外部文件实践
  • 2024年中国工业大模型行业发展研究报告|附43页PDF文件下载
  • 99. UE5 GAS RPG 被动技能实现
  • U盘装系统,使用U盘启动,提示需要装驱动
  • gaussdb 主备 8 数据库安全学习
  • React 基础阶段学习计划
  • FFmpeg的简单使用【Windows】--- 指定视频的时长
  • 请求参数中字符串的+变成了空格
  • 前端开发攻略---使用AJAX监控网络请求进度
  • [已解决]DockerTarBuilder永久解决镜像docker拉取异常问题
  • 机器学习实战27-基于双向长短期记忆网络 BiLSTM 的黄金价格模型研究
  • 阿拉伯应用市场的特点
  • 音频响度归一化 - python 实现
  • 嵌入式硬件设计详解
  • Linux防火墙与SElinux