557. Reverse Words in a String III
2022/1/7 6:33:28
本文主要是介绍557. Reverse Words in a String III,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
Given a string s, reverse the order of characters in each word within a sentence while still preserving whitespace and initial word order.
Example 1:
Input: s = "Let's take LeetCode contest"
Output: "s'teL ekat edoCteeL tsetnoc"
Example 2:
Input: s = "God Ding"
Output: "doG gniD"
Constraints:
1 <= s.length <= 5 * 104
s contains printable ASCII characters.
s does not contain any leading or trailing spaces.
There is at least one word in s.
All the words in s are separated by a single space.
Solution:
class Solution { public: string reverseWords(string s) { int le = s.size()-1; int ri = s.size()-1; reverse(s.begin(), s.end()); string newStr; while (le >= 0) { if (le == 0) { newStr.append(s.substr(0, ri - le + 1)); } else if (s[le] == ' ') { newStr.append(s.substr(le+1, ri - le) + " "); ri = le-1; } le--; } return newStr; } };
优化方案:
class Solution { public: string reverseWords(string& s) { int i = 0; for (int j = 0; j < s.size(); ++j) { if (s[j] == ' ') { reverse(s.begin() + i, s.begin() + j); i = j + 1; } } reverse(s.begin() + i, s.end()); return s; } };
这篇关于557. Reverse Words in a String III的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-24怎么修改Kafka的JVM参数?-icode9专业技术文章分享
- 2024-12-23线下车企门店如何实现线上线下融合?
- 2024-12-23鸿蒙Next ArkTS编程规范总结
- 2024-12-23物流团队冬至高效运转,哪款办公软件可助力风险评估?
- 2024-12-23优化库存,提升效率:医药企业如何借助看板软件实现仓库智能化
- 2024-12-23项目管理零负担!轻量化看板工具如何助力团队协作
- 2024-12-23电商活动复盘,为何是团队成长的核心环节?
- 2024-12-23鸿蒙Next ArkTS高性能编程实战
- 2024-12-23数据驱动:电商复盘从基础到进阶!
- 2024-12-23从数据到客户:跨境电商如何通过销售跟踪工具提升营销精准度?