博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
345. Reverse Vowels of a String
阅读量:5291 次
发布时间:2019-06-14

本文共 1355 字,大约阅读时间需要 4 分钟。

不定期更新leetcode解题java答案。

采用pick one的方式选择题目。 

题意为将给定字符串中的元音字符逆序处理返回。

思路为从前向后、从后向前进行字符检索,若为元音则交换顺序,否则不变。代码如下:

1 public class Solution { 2     public String reverseVowels(String s) { 3         char[] chs = new char[s.length()]; 4         int start = 0, end = s.length() - 1; 5          6         while(start <= end){ 7             char startChar = s.charAt(start), endChar = s.charAt(end); 8             if(isVowel(startChar) && isVowel(endChar)){ 9                 chs[start] = endChar;10                 chs[end] = startChar;11                 start++;12                 end--;13             }else{14                 if(!isVowel(startChar)){15                     chs[start] = startChar;16                     start++;17                 }18                 if(!isVowel(endChar)){19                     chs[end] = endChar;20                     end--;21                 }22             }23         }24         25         StringBuilder sb = new StringBuilder();26         for(int i = 0; i < s.length(); i++)27             sb.append(chs[i]);28             29         return sb.toString();30     }31     32     public boolean isVowel(char ch){33         return ch == 'a' || ch == 'e' || ch == 'o' || ch == 'i' || ch == 'u'34             || ch == 'A' || ch == 'E' || ch == 'O' || ch == 'I' || ch == 'U';35     }36 }

 

转载于:https://www.cnblogs.com/zslhq/p/5942638.html

你可能感兴趣的文章
smali语法小结
查看>>
[python]-类的继承
查看>>
pkg-config 设置
查看>>
选择之后,不能再选择。分配之后,不能再分配
查看>>
修复Kaos的中文显示
查看>>
自学it18大数据笔记-第三阶段Spark-day03——会持续更新……
查看>>
HBase总结
查看>>
xcode 快捷键
查看>>
STM32 CubeMX 中如何查看系统时钟
查看>>
C# 操作excel
查看>>
IT不同子领域的必读书单
查看>>
6.22
查看>>
(Nginx+Apache)实现反向代理与负载均衡
查看>>
内省、JavaBean
查看>>
【笨嘴拙舌WINDOWS】实践检验之屏幕取色
查看>>
CRM(四川网脉系统)项目总结
查看>>
常用HTTP状态码和CURL 000问题
查看>>
[leetcode]Valid Sudoku
查看>>
lesson 8:小程序
查看>>
鼠标悬停显示透明文字内容
查看>>