首页 > 代码库 > Leetcode: Reverse Vowels of a String
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
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。