题解 | #倒置字符串#

倒置字符串

http://www.nowcoder.com/questionTerminal/8869d99cf1264e60a6d9eff4295e5bab

先将字符串整个逆置一遍,再挨个逆置每个单词。 注意要考虑越界。

#include <iostream>
#include <string>
#include <algorithm>
using namespace std;

int main()
{
	string str;
	getline(cin, str);
	reverse(str.begin(), str.end()); // 先完全倒置一遍
	for (size_t i = 0; i < str.size(); ++i) {
		int tmp = i;
		while (i < str.size() && str[i] != ' ') // 注意别越界 查找单词分界
			++i;
		reverse(str.begin() + tmp, str.begin() + i); // 倒置每一个单词
	}
	cout << str << endl;
}
全部评论

相关推荐

11-04 10:30
已编辑
门头沟学院 研发工程师
开心小狗🐶:“直接说答案”
点赞 评论 收藏
分享
10-21 16:54
门头沟学院 Java
后端转测开第一人:微服务没用 校招都不看微服务的 还有就是后端行情是这样的 找实习纯看运气 秋招更是吃运气和缘分 如果对代码没有极致的追求 可以转测开
应届生简历当中,HR最关...
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务