Leetcode: Reverse Vowels of a String
Posted neverlandly
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Leetcode: Reverse Vowels of a String相关的知识,希望对你有一定的参考价值。
Write a function that takes a string as input and reverse only the vowels of a string. Example 1: Given s = "hello", return "holle". Example 2: Given s = "leetcode", return "leotcede". Note: The vowels does not include the letter "y".
Two Pointers 解法, 注意大小写
1 public class Solution { 2 public String reverseVowels(String s) { 3 StringBuffer res = new StringBuffer(s); 4 int l=0, r=s.length()-1; 5 while (l < r) { 6 while (l<r && !isVowel(res.charAt(l))) l++; 7 while (l<r && !isVowel(res.charAt(r))) r--; 8 if (l == r) break; 9 char temp = res.charAt(l); 10 res.setCharAt(l, res.charAt(r)); 11 res.setCharAt(r, temp); 12 l++; 13 r--; 14 } 15 return res.toString(); 16 } 17 18 public boolean isVowel(char c) { 19 if (c==‘a‘ || c==‘e‘ || c==‘i‘ || c==‘o‘ || c==‘u‘|| c==‘A‘ || c==‘E‘ || c==‘I‘ || c==‘O‘ || c==‘U‘) return true; 20 else return false; 21 } 22 }
以上是关于Leetcode: Reverse Vowels of a String的主要内容,如果未能解决你的问题,请参考以下文章
LeetCode Reverse Vowels of a String
[LeetCode]345 Reverse Vowels of a String
LeetCode 345. Reverse Vowels of a String
Leetcode 345. Reverse Vowels of a String