一、前记(3/3)

号外!号外!此blog主算法高产(好吧,其实是为了赶进度肝了两天),最近在刷九章的算法,在打九章的码力测试的时候,发现有些专属题出的还不错,但是毕竟是专属题,连答案的代码都不会给乞丐版的看,只有氪金的人才能看。(太可恶了!!!)

二、题目描述

特别要注意说明和示例2里面的情况,不能太楞了

三、解题思路

1、我的思路

因为单词之间必有空格,不管待翻转的字符串每个单词之间有多少个空格,要求输出的字符串单词之间必须空格只有一个(详见示例3)。所以照着这种情况来看的话,我们完全可以使用split()以空格来分割字符串,使用join用空格进行连接。

参考代码:

class Solution:
    """
    @param: s: A string
    @return: A string
    """
    def reverseWords(self, s):
        return ' '.join(s.split()[::-1])

#as a checking
solution=Solution()
a="i am  aaaaa!"
print(solution.reverseWords(a))

2、官方代码

看了一下官方的代码,基本思路是一样的,但是官方将我的[::-1],给变成了revserd()。这个不影响,都是一样的作用

四、学到了什么?

这一次我学到了,利用join来将列表里面的字符连接起来