admin 管理员组文章数量: 1087677
[勇者闯LeetCode] 189. Rotate Array
[勇者闯LeetCode] 189. Rotate Array
Description
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]
.
Information
- Tags: Array
- Difficulty: Easy
Solution
向右翻转k步 = 向右翻转(k % nums.size())步 = 前(nums.size()-k)元素reverse -> 后k元素reverse -> 所有元素reverse
C++ Code
class Solution {
public:void rotate(vector<int>& nums, int k) {if (!nums.empty()) {k %= nums.size();reverse(nums.begin(), nums.begin() + nums.size() - k);reverse(nums.begin() + nums.size() - k, nums.end());reverse(nums.begin(), nums.end()); }}
};
本文标签: 勇者闯LeetCode 189 Rotate Array
版权声明:本文标题:[勇者闯LeetCode] 189. Rotate Array 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/b/1694385362a251453.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论