leetcode 189. 旋转数组
题目
思路
先左边翻转,再右边翻转,最后整体翻转。
注意存在翻转超过一个周期的情况,要先取余,避免越界。
题解
class Solution {public void rotate(int[] nums, int k) {k %= nums.length;//翻转超过一个周期int pos = nums.length - k;reverse(nums, 0, pos - 1);reverse(nums, pos, nums.length - 1);reverse(nums, 0, nums.length - 1);}public void reverse(int[] nums, int left, int right) {//System.out.println("翻转前:" + Arrays.toString(nums) + ", left=" + left + ", right=" + right);while (left <= right) {int temp = nums[left];nums[left] = nums[right];nums[right] = temp;left++;right--;}//System.out.println("翻转后:" + Arrays.toString(nums));}
}
leetcode 189. 旋转数组相关推荐
- LeetCode 189. 旋转数组(环形替换)
1. 题目 给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数. 示例 1:输入: [1,2,3,4,5,6,7] 和 k = 3 输出: [5,6,7,1,2,3,4] 解释: 向 ...
- Leetcode 189. 旋转数组 解题思路及C++实现
方法一:暴力方法 解题思路: 用栈存储后面的 k 个元素,然后将 nums 数组的元素往后挪 k 位,然后再将栈中的元素存进nums数组中. class Solution { public:void ...
- Leetcode 189. 旋转数组 (每日一题 20210909)
给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数.进阶:尽可能想出更多的解决方案,至少有三种不同的方法可以解决这个问题. 你可以使用空间复杂度为 O(1) 的 原地 算法解决这个问 ...
- leetcode(189) 旋转数组
**给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数. 进阶: 尽可能想出更多的解决方案,至少有三种不同的方法可以解决这个问题. 你可以使用空间复杂度为 O(1) 的 原地 算法解 ...
- LeetCode-数组-189. 旋转数组
描述 189. 旋转数组 给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数. 进阶: 尽可能想出更多的解决方案,至少有三种不同的方法可以解决这个问题. 你可以使用空间复杂度为 O( ...
- 数组元素替换_LeetCode 题解 | 189. 旋转数组
力扣 189. 旋转数组(点击查看题目) 题目描述 给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数. 示例 1: 示例 2: 说明: 尽可能想出更多的解决方案,至少有三种不同的方 ...
- 189. 旋转数组 golang
一个引出较多知识点的题 关于golang的append函数的踩坑 剑指offer-翻转字符串 557. 反转字符串中的单词 III 题目 189. 旋转数组 给定一个数组,将数组中的元素向右移动 k ...
- 刷爆LeetCode之旋转数组
旋转数组 给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数. 示例 1: 输入: [1,2,3,4,5,6,7]和 k = 3 输出: [5,6,7,1,2,3,4] 解释: 向右 ...
- LeetCode 初级 - 旋转数组
旋转数组 给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数. 示例 1: 输入: [1,2,3,4,5,6,7] 和 k = 3 输出: [5,6,7,1,2,3,4] 解释: 向 ...
最新文章
- [导入]文件,图片操作相关.
- Exchange 2013接收连接器介绍
- [YTU]_2018 ( 约瑟夫问题)
- highcharts如何把图多余的空白页面_如何进行前端性能测试入门篇
- 2440 nand flash和nor flash上启动
- 封装一个ViewPager真正的实现图片无限循环滚动带导航点
- java 独占锁_锁分类(独占锁、分拆锁、分离锁、分布式锁)
- 19级:班级日常分享 | 一天一瞬间
- 飞畅科技教你如何选择合适的PoE交换机?
- form表单 1128
- 微信「扫码支付」被诉侵犯专利权;苹果回应“iOS 13 频繁提醒 App 定位”;Python 2 退休 | 极客头条...
- CVPR 2022 论文和开源项目合集
- latex中设置标题左对齐
- 记一次云主机如何挂载对象存储
- 7zip打不开wim文件
- 中小企业常遇到这些问题,看APS系统是如何解决的
- 优惠券通用测试要点 V1.1
- Debian10.9离线安装gcc(附离线包地址)
- Promsql语法用法
- 香港国际珠宝展及香港国际钻石、宝石及珍珠展揭幕
热门文章
- CodeForces - 1208E Let Them Slide(模拟+multiset)
- ssh、私钥、密钥理解
- clob类型用java怎么存,Java 储存和读取 oracle CLOB 类型字段的实用方法
- cocos2d-x游戏开发(二)开始菜单续
- 手把手教你玩转ARP包(二)
- MySQL 锁与MVCC :数据库的锁、MVCC、当前读、快照读、锁算法、死锁
- 硬核致敬Linux !30岁生日快乐!
- 图文:关于进程与线程,我看过最通俗的解释!
- RabbitMQ之TTL(Time-To-Live 过期时间)
- 程序员应该知道的那些画图工具-第一期