leetcode之Reverse Vowels of a String
2016-06-09 01:35
330 查看
这题是典型的双指针问题,前后各一个指针用来检测是否是元音,都是的话互相交换来解决。
理论上leetcode的344. Reverse String也是同样的道理。不过我还是更喜欢return s[::-1]一句话来搞定。
class Solution(object): def reverseVowels(self, s): """ :type s: str :rtype: str """ if len(s) < 2: return s i = 0 j = len(s) - 1 vowels = ['a', 'e', 'i', 'o', 'u'] s1 = list(s) s = s.lower() while i < j: if s[i] not in vowels: i = i + 1 if s[j] not in vowels: j = j - 1 if i < j and s[i] in vowels and s[j] in vowels: s1[i], s1[j] = s1[j], s1[i] i = i + 1 j = j - 1 return ''.join(s1)
理论上leetcode的344. Reverse String也是同样的道理。不过我还是更喜欢return s[::-1]一句话来搞定。
相关文章推荐
- Python动态类型的学习---引用的理解
- Python3写爬虫(四)多线程实现数据爬取
- 垃圾邮件过滤器 python简单实现
- 下载并遍历 names.txt 文件,输出长度最长的回文人名。
- install and upgrade scrapy
- Scrapy的架构介绍
- Centos6 编译安装Python
- 使用Python生成Excel格式的图片
- 让Python文件也可以当bat文件运行
- [Python]推算数独
- Python中zip()函数用法举例
- Python中map()函数浅析
- 关于指针的一些事情
- Python将excel导入到mysql中
- Python在CAM软件Genesis2000中的应用
- 使用Shiboken为C++和Qt库创建Python绑定
- FREEBASIC 编译可被python调用的dll函数示例