leetcode之反转字符串中的元音字母

序本文主要记录一下leetcode之反转字符串中的元音字母
leetcode之反转字符串中的元音字母文章插图
题目编写一个函数 , 以字符串作为输入 , 反转该字符串中的元音字母 。 示例 1:输入:"hello"输出:"holle"示例 2:输入:"leetcode"输出:"leotcede"提示:元音字母不包含字母 "y"。 来源:力扣(LeetCode)链接:著作权归领扣网络所有 。 商业转载请联系官方授权 , 非商业转载请注明出处 。 题解class Solution {Set set = new HashSet(){{add('a');add('e');add('i');add('o');add('u');add('A');add('E');add('I');add('O');add('U');}};public String reverseVowels(String s) {int i = 0;int j = s.length() - 1;char[] chars = s.toCharArray();while(i < j) {while (!set.contains(chars[i])}while (!set.contains(chars[j])}if (i < j) {char tmp = chars[i];chars[i] = chars[j];chars[j] = tmp;i++;j--;}}return new String(chars);}}小结【leetcode之反转字符串中的元音字母】这里先使用HashSet存放大小写的元音字母 , 之后使用头尾指针同时对字符串数组进行遍历 , 当i指向的字符与j指向的字符都是元音时 , 进行交换同时更新指针 , 不是元音字符时仅仅更新指针 。
doc

  • 反转字符串中的元音字母