题目
牛客最近来了一个新员工Fish,每天早晨总是会拿着一本英文杂志,写些句子在本子上。同事Cat对Fish写的内容颇感兴趣,有一天他向Fish借来翻看,但却读不懂它的意思。例如,“student. a am I”。后来才意识到,这家伙原来把句子单词的顺序翻转了,正确的句子应该是“I am a student.”。Cat对一一的翻转这些单词顺序可不在行,你能帮助他么?
思考
- 解法一: 字符串操作
通过切分和逆序可以得到结果。 - 解法二: 手动翻转
转自剑指Offer(四十四):翻转单词顺序序列 | Jack Cui
观察字符串变化规律,你会发现这道题很简单。只需要对每个单词做翻转,然后再整体做翻转就得到了正确的结果。
需要注意字符串不可变,列表可变。
代码
- 解法一
class Solution:
def ReverseSentence(self, s):
# write code here
elemList = s.split(" ")
return ' '.join(elemList[::-1])
- 解法二
#-*-coding:utf-8-*-
class Solution:
def ReverseSentence(self, s):
# write code here
s_list = list(s)
s_list.append(' ')