0%

左旋转字符串

题目地址

难度:

题目描述:

字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能。比如,输入字符串”abcdefg”和数字2,该函数将返回左旋转两位得到的结果”cdefgab”。

示例1:

1
2
输入: s = "abcdefg", k = 2
输出: "cdefgab"

示例2:

1
2
输入: s = "lrloseumgh", k = 6
输出: "umghlrlose"

限制:

  • 1 <= k < s.length <= 10000
🙋‍♂️🙋‍♂️🙋‍♂️🙋‍♂️🙋‍♂️🙋‍♂️🙋‍♂️🙋‍♂️🙋‍♂️🙋‍♂️🙋‍♂️🙋‍♂️🙋‍♂️🙋‍♂️🙋‍♂️解题过程🙋‍♂️🙋‍♂️🙋‍♂️🙋‍♂️🙋‍♂️🙋‍♂️🙋‍♂️🙋‍♂️🙋‍♂️🙋‍♂️🙋‍♂️🙋‍♂️🙋‍♂️🙋‍♂️🙋‍♂️
解题过程:

思路:

使用用string类的函数,substr()截取前面n个字符用insert()函数插入到字符串s的后面,最后erase()删除前面n个字符

c++代码:(执行用时0ms,击败100%,内存消耗8M,击败9.12%)

1
2
3
4
5
6
7
8
9
10
class Solution {
public:
string reverseLeftWords(string s, int n) {
//把前面n个字符插入到字符串后面
s.insert(s.length(),s.substr(0,n));
//删除字符串前面n个字符
s.erase(0,n);
return s;
}
};
⏳⏳⏳⏳⏳⏳⏳⏳⏳⏳⏳⏳⏳⏳⏳⏳⏳⏳⏳⏳总 结⏳⏳⏳⏳⏳⏳⏳⏳⏳⏳⏳⏳⏳⏳⏳⏳⏳⏳⏳⏳
总结:

没有官方题解,也是简单题,Let‘s go on!😐。

------------- THE END! THANKS! -------------