题解
【入门】字符串中的空格移位
1 条题解
-
0
解题思路
把字符串中所有的空格移到最前面,其他字符保持原来的顺序。
方法:
- 统计空格个数
- 先输出所有空格
- 再输出所有非空格字符
参考代码
#include <iostream> #include <string> using namespace std; int main() { string s; getline(cin, s); int cnt = 0; for (int i = 0; i < s.size(); i++) { if (s[i] == ' ') cnt++; } for (int i = 0; i < cnt; i++) cout << ' '; for (int i = 0; i < s.size(); i++) { if (s[i] != ' ') cout << s[i]; } cout << endl; return 0; }复杂度分析
- 时间复杂度:O(N)
- 空间复杂度:O(1)
- 1