news 2026/4/23 16:20:50

翻转一维数组

作者头像

张小明

前端开发工程师

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/23 12:34:04

计算2的n次方(大整数乘法)

题目 计算2的n次方&#xff0c;n<10000。 思路 由于计算的结果可能非常大&#xff0c;甚至 long long 都存不下&#xff0c;所以我们考虑用数组存储结果的每一位&#xff0c;前面的存低位&#xff0c;后面存高位&#xff0c;比如说a[0]存的是个位&#xff0c;然后a[1]存十…

作者头像 李华
网站建设 2026/4/23 15:28:40

关于bean的相关知识点

在javase阶段&#xff0c;我们知道了bean的庞大体系 继承&#xff0c;实现。抽象类&#xff0c;多态之类的 1. 核心概念澄清 你说的对&#xff0c;也不完全对&#xff1a; 是的&#xff0c;Bean本质上就是一个Java类的实例&#xff08;对象&#xff09;但在Spring中&#xf…

作者头像 李华
网站建设 2026/4/23 13:01:36

基于Simulink的永磁同步风电机组振动抑制控制仿真

目录 手把手教你学Simulink 一、引言:为什么风机需要“主动振动抑制”? 二、系统建模:机电耦合动力学 1. 两质量块模型(Two-Mass Model) 2. 塔筒模型(简化为悬臂梁) 三、振动抑制策略设计 1. 扰动频率识别 2. 核心方法:陷波滤波器 + 谐振控制器 A. 陷波滤波器(…

作者头像 李华
网站建设 2026/4/23 14:46:21

对于springboot

1.工程领域&#xff0c;如何创建一个springboot&#xff0c;选择合适的依赖。 2.springboot的最大特性的认识 我们知道&#xff0c;有了spring的出现&#xff0c;java的bean就可以ioc&#xff0c;控制反转了&#xff0c;我们创建bean只用关注业务需要的字段就可以了。为什么需…

作者头像 李华
网站建设 2026/4/23 13:02:50

OpCore Simplify:颠覆传统的一键智能黑苹果配置革命

OpCore Simplify&#xff1a;颠覆传统的一键智能黑苹果配置革命 【免费下载链接】OpCore-Simplify A tool designed to simplify the creation of OpenCore EFI 项目地址: https://gitcode.com/GitHub_Trending/op/OpCore-Simplify 还在为复杂的EFI配置而烦恼&#xff1…

作者头像 李华