Re: [闲聊] 每日LeetCode

楼主: yam276 ('_')   2022-09-22 11:38:13
※ 引述《Rushia (みけねこ的鼻屎)》之铭言:
: 557. Reverse Words in a String III
: 题目:
: 给定一个字串,返回这个字串以"空白分隔"的反转。
: Example:
: Input: s = "God Ding"
: Output: "doG gniD"
思路:
1. 用getline切
2. 用reverse转
3. 放进output
4. 后面还有就加空格
都是stl有的东西我不想造轮子==
class Solution
{
public:
string reverseWords(string input)
{
const char delimiter = ' ';
string output = "";
stringstream input_stream(input);
while (!input_stream.eof())
{
string sub_str;
getline(input_stream, sub_str, delimiter);
reverse(sub_str.begin(), sub_str.end());
output.append(sub_str);
if(!input_stream.eof())
output.append(" ");
}
return output;
}
};
作者: Rushia (みけねこ的鼻屎)   2022-09-22 11:42:00
不造轮子的话执行时间很难看ㄚ
楼主: yam276 ('_')   2022-09-22 11:43:00
但考虑实务 造轮子不切实际 真要当轮子大师我就去写组语了比起造轮子能根据地形换正确的轮子才是重点
作者: Neuenmuller (苏菲・诺伊恩谬拉)   2022-09-22 12:21:00
这个一般来说都是two pointers解ㄅ,实际上写起来也很简单 而且你这样做浪费空间,还要copy data
楼主: yam276 ('_')   2022-09-22 14:59:00
后来改用two pointers了

Links booklink

Contact Us: admin [ a t ] ucptt.com