题目
给定一个字符串,你需要反转字符串中每个单词的字符顺序,同时仍保留空格和单词的初始顺序。
示例 1:
输入: “Let’s take LeetCode contest”
输出: “s’teL ekat edoCteeL tsetnoc”
来源:力扣(LeetCode)
题解
这道题以另一题作为基础,就是上一篇leetcode题记-344.反转字符串。
这里要注意的就是,这是一个“双指针法”,在运行的过程中会有一个头指针固定,尾指针不断向前移动,遇到空格即为头指针和尾指针之间为一个单词,对这个单词进行反转即可。而使用的交换算法是反转字符串中最快速的异或交换法,实际上还是一个双指针法。
1 | class Solution { |
执行用时 : 16 ms, 在所有 C++ 提交中击败了98.24%的用户
内存消耗 : 11.6 MB, 在所有 C++ 提交中击败了95.48%的用户