剑指Offer58-II.左旋转字符串——学习笔记

发布时间 2023-05-26 21:27:29作者: 会飞的笨笨

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

示例1:

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

示例2:

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

限制:

  • 1 <= k < s.length <= 10000

题目来源:力扣(LeetCode)链接

题解:

class Solution {
    public String reverseLeftWords(String s, int n) {
        if (s == null || s == "" || n >= s.length()) {
            return s;
        }
        // 截取字符串前 n 位作为新字符串的前面的子串
        String postStr = s.substring(0, n);
        // 截取字符串剩余子串,作为新字符串的后面的子串
        String prevStr = s.substring(n);
        // 返回拼接的新子串
        return prevStr + postStr;
    }
}