打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
LeetCode面试系列 第9天:No.345 - 反转字符串中的元音字母

上一篇 LeetCode 面试题中,我们分析了一道相对轻松的字符串面试题 - 最后一个单词的长度。今天,我们接着来看另一道字符串的算法题吧。

Leet

code

今天要给大家分析的面试题是 LeetCode 上第 345 号问题,

LeetCode - 345. 反转字符串中的元音字母

https://leetcode-cn.com/problems/reverse-vowels-of-a-string

题目描述

编写一个函数,以字符串作为输入,反转该字符串中的元音字母。

示例 1:

输入: "hello"输出: "holle"

示例 2:

输入: "leetcode"输出: "leotcede"

说明:元音字母不包含字母"y"。

  • 题目难度:简单

  • 通过次数:17.9K

  • 提交次数:37.2K

  • 贡献者:LeetCode

  • 相关标签

    • 双指针

      https://leetcode-cn.com/tag/two-pointers

    • 字符串

      https://leetcode-cn.com/tag/string

  • 相似题目

    • 反转字符串

      https://leetcode-cn.com/problems/reverse-string  难度: 简单

    • 删去字符串中的元音

      https://leetcode-cn.com/problems/remove-vowels-from-a-string  难度: 简单

解题思路:

本题的意思很简单,就是给定一个只含有英文字母的字符串,将其中的元音字母在元音字母原有的位置上进行位置反转,而非元音字母的位置保持不变。

需要注意的一点是:元音字母应把 a, e, i, o, u 的小写和大写都考虑在内。

具体的操作如下:

  • 将原字符串遍历一次,取出其中的元音字母放进一个 list (比如,变量名用 vList) 中
  • 调用函数 reverse() 将 vList 进行反转,得到反转后的 vList
  • 重新遍历原字符串,遇到非元音字母直接输出;遇到元音字母,则从已反转的 vList 中取出需要的元音字母。

已 AC 代码:

class Solution: def reverseVowels(self, s: str) -> str: vowels = ['A', 'E', 'I', 'O', 'U', 'a', 'e', 'i', 'o', 'u'] vList = list() vCount = 0 for index in range(len(s)): if s[index] in vowels: vList.append(s[index])
res_str = '' vList.reverse()
vOutCount = 0 for index in range(len(s)): if s[index] not in vowels: res_str += s[index] else: res_str += vList[vOutCount] vOutCount += 1
return res_str

运行结果:

执行用时: 84 ms, 在所有 python3 提交中击败了 48.79% 的用户.

示例代码: https://github.com/JustDoPython/leetcode-python/tree/master/leetcode-345

Leetcode

LeetCode面试系列:

第1天:Leetcode 89 - 格雷码

第2天:No.136 - 只出现一次的数

第3天:No.67 - 二进制数求和

第4天:No.202 - 快乐数

第5天:No.204 - 统计质数

第6天:No.9 - 回文数

第7天:No.13 - 罗马数字转整数

第8天:No.58 - 最后一个单词的长度

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
22 个有用的Python代码片段,让你可以像专业人士一样编程
【算法千题案例】每日LeetCode打卡——68.反转字符串中的元音字母
​LeetCode刷题实战524:通过删除字母匹配到字典里最长单词
自然拼读法
《数据科学中的R语言》之字符串处理入门---比较全面
百度C语言面试题和算法面试题
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服