列表

详情


OR41. 字符串的旋转

描述

对于一个字符串,和字符串中的某一位置,请设计一个算法,将包括i位置在内的左侧部分移动到右边,将右侧部分移动到左边。

给定字符串A和它的长度n以及特定位置p,请返回旋转后的结果。

测试样例:
"ABCDEFGH",8,4
返回:"FGHABCDE"

原站题解

上次编辑到这里,代码来自缓存 点击恢复默认模板

C++ 解法, 执行用时: 2ms, 内存消耗: 376KB, 提交时间: 2020-10-31

class StringRotation {
public:
    string rotateString(string A, int n, int p) {
        string res = A.substr(p+1)+A.substr(0, p+1);
        return res;
    }
};

C++ 解法, 执行用时: 2ms, 内存消耗: 416KB, 提交时间: 2021-09-02

class StringRotation {
public:
    string rotateString(string A, int n, int p) {
        reverse(A.begin(),A.begin()+p+1);
        reverse(A.begin()+p+1,A.end());
        reverse(A.begin(),A.end());
        return A;
    }
};

上一题