LeetCode剑指 Offer 58 - II. 左旋转字符串(C++)

Posted 敲代码两年半的练习生

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode剑指 Offer 58 - II. 左旋转字符串(C++)相关的知识,希望对你有一定的参考价值。

1 题目描述

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

2 示例描述

2.1 示例1

输入: s = “abcdefg”, k = 2
输出: “cdefgab”

2.2 示例2

输入: s = “lrloseumgh”, k = 6
输出: “umghlrlose”

3 解题限制

1 <= k < s.length <= 10000

4 解题思路

先遍历k后数组,累加到结果中
后遍历k前数组,累加到结果中

5 代码详解

class Solution {
public:
    string reverseLeftWords(string s, int n) {
        string ans = "" ;
        for ( int i = n ; i < s.length() ; i ++ )
        {
            ans = ans + s[i] ;
        }

        for ( int i = 0 ; i < n ; i ++ )
        {
            ans = ans + s[i] ;
        }
        return ans ;
    }
};

以上是关于LeetCode剑指 Offer 58 - II. 左旋转字符串(C++)的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode(剑指 Offer)- 58 - II. 左旋转字符串

Leetcode剑指 Offer 58 - II. 左旋转字符串(简单模拟)

[LeetCode]剑指 Offer 58 - II. 左旋转字符串

剑指 Offer 58 - II. 左旋转字符串

[LeetCode]剑指 Offer 32 - II. 从上到下打印二叉树 II

LeetCode(剑指 Offer)- II. 剪绳子 II