描述

Rotate an array of n elements to the right by k steps.

For example, with n = 7 and k = 3, the array [1,2,3,4,5,6,7] is rotated to [5,6,7,1,2,3,4].

Note:

Try to come up as many solutions as you can, there are at least 3 different ways to solve this problem.

分析

在一个循环里跟踪k的值即可。每一次循环时删除数组最后元素,并把这个元素插入到数组最前面,直到k为0.

代码如下:

class Solution {
public:
void rotate(vector<int>& nums, int k) {
if(k <= 0)return; //border checking
while(k != 0){
int rot = nums[nums.size() - 1];//store the laset element before erasing it
nums.erase(nums.end() - 1); //erase last element
nums.insert(nums.begin(),rot);//insert last element into beginning of the vector
--k; //update k
}
}
};

最新文章

  1. 【Win 10 应用开发】透视效果
  2. v-for遍历出的元素上添加click事件,获取对应元素上的属性id值
  3. 关于调用deleteRowsAtIndexPaths withRowAnimation方法出现错误
  4. java J2EE与DiscuzX3.2的UCenter实现单点登录
  5. Html登录表单阻止自动填充
  6. 算法入门笔记------------Day4
  7. ArcEngine:空间索引格网大小无效
  8. iOS开发融云即时通讯集成详细步骤
  9. sprint1的个人总结及《构建之法》8、9、10章读后感
  10. 【BZOJ】1069: [SCOI2007]最大土地面积(凸包+旋转卡壳)
  11. CentOS下编译安装hping3
  12. 开发设计模式(二) ActiveObject模式
  13. 整型数组处理算法(八)插入(+、-、空格)完成的等式:1 2 3 4 5 6 7 8 9=N[华为面试题]
  14. Map笔记总结
  15. android LayoutInflater的使用
  16. struts2之拦截器
  17. CentOS6.7 防火墙规则(Iptables)
  18. Web学习-jsp实现servlet过程赏析
  19. github学习:如何从本地把项目上传到github&amp;&amp;如何把github项目通过clone复制下来,详细教程
  20. sshpass安装使用

热门文章

  1. NodeJS的环境搭建+传统ELmentui+vue开发
  2. 《一头扎进》系列之Python+Selenium框架设计篇5 - 价值好几K的框架,哎呦!这个框架还真有点料啊!!!
  3. VK Cup 2017 - Round 1 (CDE)
  4. shell 学习笔记7-shell-函数
  5. zabbix 数据库分表操作
  6. ef报错(因为相同类型的其他实体已具有相同的主键值)
  7. English-培训1-Phonetic symbols
  8. 【常用技巧】js开发的一些技巧
  9. 【leetcode】366.Find Leaves of Binary Tree
  10. Linux VPS搭建蚂蚁笔记Leanote私有云笔记存储平台