題目:
定義字串的左旋轉操作:把字串前面的若干個字元移動到字串的尾部。
如把字串abcdef 左旋轉2 位得到字串cdefab。請實現字串左旋轉的函式。
要求時間對長度為n 的字串操作的複雜度為o(n),輔助記憶體為o(1)。
分析:其實也看到這道題就是一道水題,不過題意中規定了記憶體的大小只能為o(1),所以加大了一點點難度,我們可以這樣解決:ab可以先反轉a, 然後再反轉b,然後反轉整個字串。
**實現:
#include#includeusing namespace std;
void reverse(string::iterator t1, string::iterator t2)
}void solve(string &s, int n)
int main()
return 0;
}
左旋轉字串
題目 定義字串的左旋轉操作 把字串前面的若干個字元移動到字串的尾部。如把字串abcdef左旋轉2位得到字串cdefab。請實現字串左旋轉的函式。要求時間對長度為n的字串操作的複雜度為o n 輔助記憶體為o 1 思想 旋轉三次 include include using namespace std v...
左旋轉字串
package com.string 旋轉字串 q 26 左旋轉字串 題目 定義字串的左旋轉操作 把字串前面的若干個字元移動到字串的尾部。如把字串abcdef左旋轉2位得到字串cdefab。請實現字串左旋轉的函式。要求時間對長度為n的字串操作的複雜度為o n 輔助記憶體為o 1 public cla...
左旋轉字串
如abc,左旋1得到bca,左旋2得到cab o n k 的演算法 include using namespace std include include include include include include include include include include int main...