字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个C++函数实 现字符串左旋转操作的功能,比如,输入字符串"abcdefg"和数字2,该函数将返回左旋转两 位得到的结果“cdefgab”
时间: 2024-12-08 07:21:12 浏览: 14
C++课程设计 —— 字符串操作
在C++中,可以定义一个名为`rotateString`的函数来实现字符串的左旋转操作。这里我们先假设输入的是一个`std::string`类型的原始字符串以及一个整数作为旋转次数。我们可以创建一个新的临时数组存储原字符串的一部分,然后将剩余部分添加到开头,最后拼接回新的字符串。
```cpp
#include <string>
using namespace std;
// 定义旋转字符串的函数
string rotateString(string str, int k) {
// 确保旋转次数的有效性
k = k % str.length();
// 创建临时字符串存储旋转部分
string temp = str.substr(str.length() - k, k);
// 将旋转后的部分添加到原字符串前半部分的末尾
str.erase(str.begin(), str.begin() + k);
str.insert(str.end(), temp.begin(), temp.end());
return str;
}
```
例如,如果你调用`rotateString("abcdefg", 2)`,它会返回 "cdefgab"。
阅读全文