博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Reverse Words in a String III
阅读量:4935 次
发布时间:2019-06-11

本文共 890 字,大约阅读时间需要 2 分钟。

    这道题属于简单题

  题目:

    

  思路:

    1、我的思路比较不好,弄出来的代码不够简洁。我采用栈的形式,遍历整个列表,遇到‘ ’或者长度达到了最大(长度这个条件是为了防止示例中没有出现空格,只有一个单词)就把a[]当中的元素全部加到b[]中并添加一个‘ ’,最后去掉b的最后一个元素,再返回‘’。join(b)

    2、大神:只用了一行,他先用spilt将括号去除,再反向排序,再使用‘ ’.join(),最后再反向排序

  代码:

    1、我的垃圾代码:

1 class Solution(object): 2     def reverseWords(self, s): 3         """ 4         :type s: str 5         :rtype: str 6         """ 7         a = [] 8         b = [] 9         for i in range(0, len(s) + 1):10             if i == len(s) or s[i] == ' ':11                 l = len(a)12                 while l > 0:13                     b.append(a.pop())14                     l -= 115                 b.append(' ')16             else: a.append(s[i])17         b.pop()18         19         return ''.join(b)

    2、大神代码:

  

1 def reverseWords(self, s):2     return ' '.join(s.split()[::-1])[::-1]

 

转载于:https://www.cnblogs.com/liuxinzhi/p/7502822.html

你可能感兴趣的文章
HTML页和ashx之间关系的一点小应用
查看>>
智能合约安全前传-基础知识入门
查看>>
Myeclipse反编译插件
查看>>
Dubbo和Zookerper的关系
查看>>
centos 5 系统安装MYSQL5.7
查看>>
docker数据卷(转)
查看>>
地图定位及大头针设置
查看>>
oracle常用小知识点
查看>>
CATransform3D参数的意义
查看>>
"外部组建发生错误"
查看>>
怎么自己在Objective-C中创建代理
查看>>
svn检出maven工程到eclipse里面,部署到tomcat的步骤
查看>>
Under Armour Drive 4 Performance Reviews
查看>>
C#操作目录和文件
查看>>
警惕数组的浅拷贝
查看>>
百度地图 导航
查看>>
SQLServer 错误: 15404,无法获取有关 Windows NT 组
查看>>
html5全局属性
查看>>
【转】Android Hook框架Xposed详解
查看>>
Android 有用代码片段总结
查看>>