首页 > 其他 > 详细

LeetCode:反转字符串中的元音字母【345】

时间:2018-09-23 17:02:47      阅读:136      评论:0      收藏:0      [点我收藏+]

LeetCode:反转字符串中的元音字母【345】

题目描述

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

示例 1:

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

示例 2:

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

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

题目分析

  所谓的做题就是把以前背下来的拿过来改一下即可。双指针碰撞模型,之前已经描述过很多次了,此处不在赘述。

  知道AEIOU是元音字母?左右指针所指向元素交换一下位置即可

Java题解

class Solution {
    public String reverseVowels(String s) {
        char[] arr = s.toCharArray();
        int left =0;
        int right =arr.length-1;
        
        while(left<right)
        {
            while(!isYuanYin(s.charAt(left))&&left<right)
                left++;
            while(!isYuanYin(s.charAt(right))&&left<right)
                right--;
            swap(left,right,arr);
            left++;right--;
        }
        return new String(arr);
        
    }
    
    public boolean isYuanYin(char c)
    {
        if(c==‘a‘||c==‘e‘||c==‘i‘||c==‘o‘||c==‘u‘)
            return true;
        if(c==‘A‘||c==‘E‘||c==‘I‘||c==‘O‘||c==‘U‘)
            return true;
        return false;
    }
    
    public void swap(int i,int j,char[] arr)
    {
        char tmp = arr[i];
        arr[i] =arr[j];
        arr[j]=tmp;
    }
}

  

 

LeetCode:反转字符串中的元音字母【345】

原文:https://www.cnblogs.com/MrSaver/p/9692909.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!