STL-string(ACM)

1.相当于加了一些操作的vector<char>

基本操作

字符串转换(C++11)

// 将字符串转换为整型
stoi()

// 将字符串转换为long long
stoll()

// 将字符串转换为float型
stof()

// 将字符串转换为double型
stod()

后面加入

s += t; // 时间复杂度 O(t)
s.push_back();

字符串替换

s.replace(起始位置,替换长度,要替换的字符串)

把string类型转换成C的字符串类型

s.c_str();

使用它之后可以用puts()
// 比如
puts(s.c_str());

找字符串(时间复杂度 O(s长度 * t 的长度))(O (n * n))

s.find(t, pos)
// 从pos位置开始找t,找不到返回spring::npos (值为-1)
s.find(t) // 从头开始找

截取一段字符串字串

s.substr(位置,要的字串长度); // 位置注意是0派

string s = "12345678";
s.substr(2, 5); // "34567" 为截取结果
s.substr(); // 只填位置就是默认从位置开始截取到最后

 反转部分字符串(慢)

    string s = "123456";
    rotate(s.begin() + 2, s.begin() + 3, s.end() - 1);
    cout << s;
// 把4,5插进3的前面
//结果:124536

 

posted @ 2023-06-11 17:27  AC玴  阅读(19)  评论(0)    收藏  举报