leetcode :Reverse Vowels of a String
2016-07-09 14:04
274 查看
原题:
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".
分析:返回一个新的字符串,其中元音字符排序是原字符串中元音字符的逆序,其他字符顺序不变。
题目EASY,直接上代码:
public class Solution {
public String reverseVowels(String s) {
StringBuffer sb = new StringBuffer();
List<Character> vowel =new ArrayList<Character>();
vowel.add('a');
vowel.add('e');
vowel.add('i');
vowel.add('o');
vowel.add('u');
vowel.add('A');
vowel.add('E');
vowel.add('I');
vowel.add('O');
vowel.add('U');
List<Character> ls =new ArrayList<Character>();
for (int i = 0; i < s.length(); i++) {//将s中所有元音字符放入集合
if(vowel.contains(s.charAt(i)))
ls.add(s.charAt(i));
}
for (int i = 0; i < s.length(); i++) {
if(!vowel.contains(s.charAt(i)))
sb.append(s.charAt(i));//非元音字符直接拼接成字符串
else
sb.append(ls.remove((ls.size()-1)));//反向拼接元音字符
}
return sb.toString();
}
}
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".
分析:返回一个新的字符串,其中元音字符排序是原字符串中元音字符的逆序,其他字符顺序不变。
题目EASY,直接上代码:
public class Solution {
public String reverseVowels(String s) {
StringBuffer sb = new StringBuffer();
List<Character> vowel =new ArrayList<Character>();
vowel.add('a');
vowel.add('e');
vowel.add('i');
vowel.add('o');
vowel.add('u');
vowel.add('A');
vowel.add('E');
vowel.add('I');
vowel.add('O');
vowel.add('U');
List<Character> ls =new ArrayList<Character>();
for (int i = 0; i < s.length(); i++) {//将s中所有元音字符放入集合
if(vowel.contains(s.charAt(i)))
ls.add(s.charAt(i));
}
for (int i = 0; i < s.length(); i++) {
if(!vowel.contains(s.charAt(i)))
sb.append(s.charAt(i));//非元音字符直接拼接成字符串
else
sb.append(ls.remove((ls.size()-1)));//反向拼接元音字符
}
return sb.toString();
}
}
相关文章推荐
- 考前总结小本本
- 开发Android遇到过的坑
- FPGA基础知识12(FIFO 同步、异步以及Verilog代码实现)
- Node.js 创建第一个应用
- Jfinal 集成spring 、cxf 做webService服务
- 新闻案例
- Node.js 安装配置
- HIVE和HBASE区别
- Linux常用命令大全
- ORA-00054: 资源正忙,但指定以 NOWAIT 方式获取资源
- C++引用原理剖析
- [置顶] 年薪百万的年轻人都是怎样生活的?——脸书程序员的故事
- Skyboxes
- 数据库迁移之impdp_dblink测试, 12c迁移到11gr2
- Node.js 教程
- Confluence 安装
- php生成随机数的三种方法
- AXURE在原型设计中的应用
- CXF WebService整合Spring
- POJ1274