日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

将一个string左移N位置

發布時間:2025/6/17 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 将一个string左移N位置 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?使用了《編程珠璣》上的解法。

#include <iostream> #include <string> using namespace std;//注意這里使用了XOR進行交換的方法,這種方法不能讓一個數和自身交換 void Reverse(string &str, int left, int right){for(; left < right; left++, right--){str[left] = str[left] ^ str[right];str[right] = str[left] ^ str[right];str[left] = str[left] ^ str[right];} }void ShiftStr(string &str, int offset){int len = str.length();offset = offset>=0 ? offset%len : offset%len + len;Reverse(str, 0, offset-1);Reverse(str, offset, len-1);Reverse(str, 0, len-1); }int main() {string str;for (int i = -5; i <= 5; i++){str = "abcdefghijklmn";ShiftStr(str, i);cout<<"Move left "<<i<<" steps : "<<str<<endl;}return 0; }

?

?

?

?

?

EOF

轉載于:https://www.cnblogs.com/lihaozy/archive/2012/12/12/2814423.html

總結

以上是生活随笔為你收集整理的将一个string左移N位置的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。