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