翻转字符串

分手后的思念是犯贱 2022-04-02 14:12 323阅读 0赞

题目描述
牛客最近来了一个新员工Fish,每天早晨总是会拿着一本英文杂志,写些句子在本子上。同事Cat对Fish写的内容颇感兴趣,有一天他向Fish借来翻看,但却读不懂它的意思。例如,“student. a am I”。后来才意识到,这家伙原来把句子单词的顺序翻转了,正确的句子应该是“I am a student.”。Cat对一一的翻转这些单词顺序可不在行,你能帮助他么?
思路使用两次翻转的方法,第一次翻转整个句子,第二次翻转每一个单词,注意字符串先要转换为list才行

  1. class Solution:
  2. def ReverseString(self, listS, start, end):
  3. if listS == []:
  4. return []
  5. while start < end:
  6. listS[start], listS[end] = listS[end], listS[start]
  7. start += 1
  8. end -= 1
  9. return listS
  10. def ReverseSentence(self, s):
  11. # write code here
  12. if s == '':
  13. return ''
  14. start, end = 0, 0
  15. listS = list(s) #需要将字符串转变为数组才能更改
  16. self.ReverseString(listS, 0, len(s) - 1)
  17. while True:
  18. while end != len(listS) and listS[end] != ' ':
  19. end += 1
  20. end -= 1
  21. self.ReverseString(listS, start, end)
  22. if end == len(listS) - 1:
  23. return ''.join(listS)
  24. start = end + 2
  25. end = start

发表评论

表情:
评论列表 (有 0 条评论,323人围观)

还没有评论,来说两句吧...

相关阅读

    相关 字符串翻转操作

    字符串翻转操作 题目: 小华有两个长度不超过1000的字符串s和t,现在他想将两个字符串翻转后拼接在一起(将s和t分别翻转后,按照s在前t在后的顺序拼接

    相关 翻转字符串

    翻转字符串 字符串反转 题目分析 翻转字符串(2) 题目分析 字符串反转 来源:牛客网 链接:https://www.n

    相关 翻转字符串

    题目描述 牛客最近来了一个新员工Fish,每天早晨总是会拿着一本英文杂志,写些句子在本子上。同事Cat对Fish写的内容颇感兴趣,有一天他向Fish借来翻看,但却读不懂它的