第 101 课
字符串反转
🟢 入门 约 5 分钟
一句话理解
字符串反转就是把字符顺序倒过来。
为什么要学
判断回文、构造输出、处理倒序编号,都会用。
讲解
可以从两端交换,直到相遇。也可以把字符依次压到另一个串前面。
STL 有 reverse(s.begin(), s.end()),头文件 algorithm。自己写一遍交换,更能记住下标。
例子
string s = "abc";
reverse(s.begin(), s.end());
cout << s;
输出:
cba
a 和 c 交换,中间 b 不动,得到 cba。
常见错误
- 只交换到 n/2-1 却用了错误的对称下标。
- 反转后忘记原串还要不要保留。
练习 做完再看下一课
输出?
string s="ab12";
reverse(s.begin(), s.end());
cout<<s;
整体倒序。
在线练习 C++ 在浏览器里编译,代码不会上传 已通过
Ctrl / ⌘ + Enter 运行 · Tab 缩进
隐藏测试点只是界面不展示数据。题目 JSON 会下发到浏览器,可在开发者工具里看到,只适合自学,不是正式比赛评测。
进度保存在本机浏览器里。
左右方向键也可翻课