美文网首页
剑指offer | 左旋字符串

剑指offer | 左旋字符串

作者: icebreakeros | 来源:发表于2019-07-31 12:01 被阅读0次

    左旋字符串

    字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部

    示例
    输入:helloworld3
    输出:loworldhel

    输入:helloworld13
    输出:loworldhel

    public class LeftRotateString {
    
        public String leftRotate(String str, int k) {
            if (Optional.ofNullable(str).isEmpty() || str.length() == 0 ||
                    k < 0 || (k % str.length()) == 0) {
                return str;
            }
    
            StringBuffer sb = new StringBuffer();
            k = k % str.length();
            int i = k;
            while (i < str.length()) {
                sb.append(str.charAt(i++));
            }
            i = 0;
            while (i < k) {
                sb.append(str.charAt(i++));
            }
            return sb.toString();
        }
    }
    

    相关文章

      网友评论

          本文标题:剑指offer | 左旋字符串

          本文链接:https://www.haomeiwen.com/subject/zfpzrctx.html