news 2026/4/18 10:00:51

翻转一维数组

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
翻转一维数组

题目

输入一个 𝑛,再输入 𝑛 个整数。将这个数组顺时针旋转 k(k≤n) 次,最后将结果输出。
顺时针旋转一次是指:将最左边的数放到最右边。

思路

建议先举个简单的例子,比如说123456,然后旋转3次,模拟出最后的结果为456123,这时候我想如果前面的是123相关的,后面是456相关的就很好了,所以我先把整个结果翻转,变成321654,这样就达到我的目的了,然后我们再观察123456,发现123->321,456->654,发现就是前面的翻转,后面的翻转即可,所以总结起来就是前面k个翻转,后面k个翻转,然后整体翻转即可。

代码

#include<iostream>#include<algorithm>usingnamespacestd;intmain(){intn,k;inta[100];cin>>n>>k;for(inti=0;i<n;i++)cin>>a[i];reverse(a,a+k);reverse(a+k,a+n);reverse(a,a+n);for(inti=0;i<n;i++)cout<<a[i]<<' ';cout<<endl;return0;}

变式

输入一个 𝑛,再输入 𝑛 个整数。将这个数组逆时针旋转 k(k≤n) 次,最后将结果输出。
逆时针旋转一次是指:将最右边的数放到最左边。

思考

有了上面的思考,我们也举个例子,还是123456,然后翻转3次,模拟得到的结果是654123,还是想要局部对应,所以我翻转得到321456,与123456对比,发现只需要翻转前面k个即可。所以总结起来,就是先翻转前k个,然后再整体翻转即可。

代码

#include<iostream>#include<algorithm>usingnamespacestd;intmain(){intn,k;inta[100];cin>>n>>k;for(inti=0;i<n;i++)cin>>a[i];reverse(a,a+k);reverse(a,a+n);for(inti=0;i<n;i++)cout<<a[i]<<' ';cout<<endl;return0;}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 8:28:42

YimMenu完全掌控:GTA5最强防护与功能增强终极指南

YimMenu完全掌控&#xff1a;GTA5最强防护与功能增强终极指南 【免费下载链接】YimMenu YimMenu, a GTA V menu protecting against a wide ranges of the public crashes and improving the overall experience. 项目地址: https://gitcode.com/GitHub_Trending/yi/YimMenu …

作者头像 李华
网站建设 2026/4/18 8:04:16

Java存储数据:数组与集合

Java存储数据&#xff1a;数组与集合 一、数组&#xff08;Array&#xff09; 1. 逻辑特征 固定大小&#xff1a;创建时指定长度&#xff0c;不能动态改变类型统一&#xff1a;所有元素必须是相同数据类型内存连续&#xff1a;元素在内存中连续存储效率高&#xff1a;通过索…

作者头像 李华
网站建设 2026/4/15 13:30:39

网站资源完整下载工具:一键备份网页所有内容

网站资源完整下载工具&#xff1a;一键备份网页所有内容 【免费下载链接】Website-downloader &#x1f4a1; Download the complete source code of any website (including all assets). [ Javascripts, Stylesheets, Images ] using Node.js 项目地址: https://gitcode.c…

作者头像 李华
网站建设 2026/3/31 16:54:20

ChatTTS-ui:开启本地语音合成的全新体验

ChatTTS-ui&#xff1a;开启本地语音合成的全新体验 【免费下载链接】ChatTTS-ui 匹配ChatTTS的web界面和api接口 项目地址: https://gitcode.com/GitHub_Trending/ch/ChatTTS-ui 你是否曾经为语音合成服务的高昂费用而烦恼&#xff1f;是否担心自己的文本内容在云端处理…

作者头像 李华
网站建设 2026/4/16 19:01:55

OpCore Simplify:5步实现黑苹果EFI配置自动化

OpCore Simplify&#xff1a;5步实现黑苹果EFI配置自动化 【免费下载链接】OpCore-Simplify A tool designed to simplify the creation of OpenCore EFI 项目地址: https://gitcode.com/GitHub_Trending/op/OpCore-Simplify 你是否曾经为繁琐的OpenCore配置而头疼&…

作者头像 李华
网站建设 2026/4/18 6:38:49

从0到1体验麦橘超然,离线AI绘图全流程分享

从0到1体验麦橘超然&#xff0c;离线AI绘图全流程分享 你是否也曾在深夜突发灵感&#xff0c;想画一张赛博朋克风的未来城市&#xff0c;却发现手头没有专业绘图软件&#xff1f;或者你只是单纯好奇&#xff1a;AI到底能不能“听懂”我的描述&#xff0c;并把它变成一幅真实的…

作者头像 李华