Rotate Array
来源:互联网 发布:javlib最新域名 编辑:程序博客网 时间:2024/06/03 16:36
一、题目要求
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].
二、代码实现
解法1:
void rotate(vector<int>& nums, int k) { if(nums.size()<2 || k<1) return;int i,val;k=k%nums.size();std::rotate(nums.begin(),nums.end()-k,nums.end()); }解法2:
void rotate(vector<int>& nums, int k) { if(nums.size()<2 || k<1) return;int i,val;queue<int> st;k=k%nums.size();if(k==0)return ;for(auto tmp=nums.end()-1;tmp>nums.begin();tmp--){if(nums.end()-tmp<=k){st.push(*tmp);}if(tmp-nums.begin()>=k){*tmp=*(tmp-k);}else{if(!st.empty()){*tmp=st.front();st.pop();}}}*nums.begin()=st.front();st.pop(); }
0 0
- Rotate Array
- Rotate Array
- Rotate Array
- Rotate Array
- Rotate Array
- Rotate Array
- rotate array
- Rotate Array
- Rotate Array
- Rotate Array
- Rotate Array
- Rotate Array
- Rotate Array
- Rotate Array
- Rotate Array
- Rotate Array
- Rotate Array
- Rotate Array
- 大一暑假计划2015.7.20
- Factorial Trailing Zeroes
- [BZOJ1067][SCOI2007]降雨量
- 导航栏图标问题
- [Android UI界面] tab_Host页面跳转,传值,刷新等问题汇总。
- Rotate Array
- codeforces 399B Red and Blue Balls-数据-(模拟题找规律)
- [BZOJ1407][Noi2002]Savage
- UVa 140 Bandwidth 例题7-6
- 在代码中调用Xib
- 观察者模式
- [BZOJ1088][SCOI2005]扫雷Mine
- Kafka基本配置
- Reverse Bits