代码随想录刷题——字符串篇(五)
55.右旋字符串
反转反转反转:
#include<bits/stdc++.h> using namespace std; # 反转函数 void reverse(string& s,int l,int r){while(l<r){swap(s[l],s[r]);l++;r--;}return ; } int main(){int k;cin>>k;string s;cin>>s;int n=s.size();# 整个字符串反转reverse(s,0,n-1);# 前面部分反转reverse(s,0,k-1);# 后面部分反转reverse(s,k,n-1);cout<<s<<endl;return 0; }
其他:
(1)一开始确实没想起来思路,以为用双指针做,实际和上一题类似,先整体反转再局部反转就可以实现了
(2)属于时间换空间