字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能。比如,输入字符串"abcdefg"和数字2,该函数将返回左旋转两位得到的结果"cdefgab"。
示例 1:
输入: s = "abcdefg", k = 2 输出: "cdefgab"
示例 2:
输入: s = "lrloseumgh", k = 6 输出: "umghlrlose"
限制:
1 <= k < s.length <= 10000
class Solution:
def reverseLeftWords(self, s: str, n: int) -> str:
return s[n:] + s[:n]
class Solution {
public String reverseLeftWords(String s, int n) {
return s.substring(n, s.length()) + s.substring(0, n);
}
}
class Solution {
public:
string reverseLeftWords(string s, int n) {
return s.substr(n) + s.substr(0, n);
}
};
class Solution {
public:
string reverseLeftWords(string s, int n) {
reverse(s.begin(), s.begin() + n);
reverse(s.begin() + n, s.end());
reverse(s.begin(), s.end());
return s;
}
};
/**
* @param {string} s
* @param {number} n
* @return {string}
*/
var reverseLeftWords = function (s, n) {
return s.substring(n) + s.substring(0, n);
};
func reverseLeftWords(s string, n int) string {
return s[n:] + s[:n]
}
impl Solution {
pub fn reverse_left_words(s: String, n: i32) -> String {
let n = n as usize;
String::from(&s[n..]) + &s[..n]
}
}
public class Solution {
public string ReverseLeftWords(string s, int n) {
return s.Substring(n) + s.Substring(0, n);
}
}