个人思路:直接采用split,reversed,join函数就行,高级语言一般都有这种函数
python
class Solution:
def reverseWords(self, s: str) -> str:
str = s.split()
str = reversed(str)
str = ' '.join(str)
return str
不过也要学习一下常规的思路,双端队列插入,挨个找出字符串压入队列,在转换成字符串
python
class Solution:
def reverseWords(self, s: str) -> str:
left, right = 0, len(s) - 1
# 去掉字符串开头的空白字符
while left <= right and s[left] == ' ':
left += 1
# 去掉字符串末尾的空白字符
while left <= right and s[right] == ' ':
right -= 1
d, word = collections.deque(), []
# 将单词 push 到队列的头部
while left <= right:
if s[left] == ' ' and word:
d.appendleft(''.join(word))
word = []
elif s[left] != ' ':
word.append(s[left])
left += 1
d.appendleft(''.join(word))
return ' '.join(d)