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

概述

反转字符串中的元音字母

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

示例 1:

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

示例 2:

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

思路+代码+注释:

public String reverseVowels(String s) {
/*
思路:使用双指针,i从0开始,j从尾开始,如果i、j都是元音那么交换位置i++、j--;如果i是元音j不是,那么j--、i不动;如果i不是元音j是,i++、j不动;
如果都不是元音那么i++、j--,直到i>=j为止
*/
int i=0;
int j=s.length()-1;
char[] chars=s.toCharArray();
while (i<j)
{
char l=chars[i];
char r=chars[j];
if (isYuanYin(l) && isYuanYin(r))
{
char tmp=l;
chars[i]=r;
chars[j]=tmp;
i++;
j--;
}else if (isYuanYin(l) && !isYuanYin(r))
{
j--;
}else if (!isYuanYin(l) && isYuanYin(r))
{
i++;
}else {
i++;
j--;
}
}
return new String(chars);
}
private boolean isYuanYin(char c)
{
if (c=='a' || c=='e' || c=='i' || c=='o' || c=='u' || c=='A' || c=='E' || c=='I' || c=='O' || c=='U')
{
return true;
}else {
return false;
}
}

最后

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

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

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

评论列表共有 0 条评论

立即
投稿
返回
顶部