我是靠谱客的博主 友好野狼,最近开发中收集的这篇文章主要介绍leetCode 反转字符串中的元音字母,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

给你一个字符串 s ,仅反转字符串中的所有元音字母,并返回结果字符串。

元音字母包括 ‘a’、‘e’、‘i’、‘o’、‘u’,且可能以大小写两种形式出现。

示例 1:
输入:s = “hello”
输出:“holle”

示例 2:
输入:s = “leetcode”
输出:“leotcede”

提示:
1 <= s.length <= 3 * 105
s 由 可打印的 ASCII 字符组成

方法一、
定义左右两个指针同时遍历,如果左指针是原音字母则开始查找右指针对应的原音字母,存在则交换位置,不存直接返回;以此循环直到右指针的值大于左指针说明遍历完成

public String reverseVowels(String s) {
char[] chars = s.toCharArray();
int left = 0;
int right = s.length() - 1;
String targetChar = "aeiouAEIOU";
while(right > left){
//判断左指针对应的值是否原音
if(targetChar.indexOf(chars[left]) >= 0){
//找到左边第一个原音之后需要找到右边第一个原音
//如果没找到说明只存在当前做指针一个原音
//否则交换左边和右边原音字母,结束右边原音字母的循环查找,再次寻找左边的原音字母
while(right > left){
if(targetChar.indexOf(chars[right]) >= 0){
char temp = chars[right];
chars[right] = chars[left];
chars[left] = temp;
right--;
break;
}
right--;
}
}
left++;
}
return new String(chars);
}

转载于:https://www.ycblog.top/article?articleId=152&pageNum=1

最后

以上就是友好野狼为你收集整理的leetCode 反转字符串中的元音字母的全部内容,希望文章能够帮你解决leetCode 反转字符串中的元音字母所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(39)

评论列表共有 0 条评论

立即
投稿
返回
顶部