345. 反转字符串中的元音字母-----leetcode刷题(python解题)

[TOC]

题目

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

示例 1:

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

示例 2:

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

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

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/reverse-vowels-of-a-string
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

解答

思路:

略微有点繁琐

  1. 将输入的字符串另存转换为一个列表
  2. 获取到全部的元音字母的位置,将其存到一个列表中
  3. 调换位置
  4. 将列表转换为字符输出

leetcode解题

class Solution(object):
    def reverseVowels(self, s):
        """
        :type s: str
        :rtype: str
        """
        yuan=["a","e","i","o","u","A","E","I","O","U"]
        s1=list(s)
        num_list=[]
        for zz,i in enumerate(s):
            if i in yuan:
                num_list.append(zz)
        yuan1=0
        yuan2=len(num_list)-1
        while yuan1 < yuan2:
            s1[int(num_list[yuan2])],s1[int(num_list[yuan1])]=s[int(num_list[yuan1])],s[int(num_list[yuan2])]
            yuan1+=1
            yuan2-=1
        return "".join(s1)
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容