劍指offer42——翻轉字符串vs左旋

劍指offer中的思路運用三次翻轉。
翻轉字符串的代碼:

    void Reserve(string& str,int Begin,int End) {
        char temp;
        while(Begin<End) {
            char temp = str[Begin];
            str[Begin] = str[End];
            str[End] = temp;
            Begin++;
            End--;
        }
    }

實際還有更簡單的方法:

class Solution {
public:
    string LeftRotateString(string str, int n) {
        int length = str.length();
        if(length==0||n>length)
            return "";
        str += str;
        return str.substr(n,length);
    }
};
發佈了61 篇原創文章 · 獲贊 17 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章