58-1翻转字符串-python

柔情只为你懂 2023-07-25 09:20 15阅读 0赞

题目:输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。标点符号和普通字母一样处理。

  1. def reverse_string(s):
  2. s= list(s)
  3. reverse(s,0,len(s)-1)
  4. begin = 0
  5. for i,c in enumerate(s):
  6. if c==' ':
  7. end = i-1
  8. reverse(s,begin,end)
  9. begin = i+1
  10. return ''.join(s)
  11. def reverse(arry,begin,end):
  12. while begin<end:
  13. arry[begin],arry[end] = arry[end],arry[begin]
  14. begin +=1
  15. end -=1

  注:采用的思想为两次翻转。先全部翻转,然后根据空格分隔的每个单词进行第二次翻转。由于Python里string不可变,所以要通过列表来进行操作。

发表评论

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

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

相关阅读

    相关 翻转字符串

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

    相关 翻转字符串

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