当前位置:网站首页>leetcode之反转字符串中的元音字母
leetcode之反转字符串中的元音字母
2020-11-08 23:48:00 【go4it】
序
本文主要记录一下leetcode之反转字符串中的元音字母
题目
编写一个函数,以字符串作为输入,反转该字符串中的元音字母。
示例 1:
输入:"hello"
输出:"holle"
示例 2:
输入:"leetcode"
输出:"leotcede"
提示:
元音字母不包含字母 "y" 。
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/reverse-vowels-of-a-string
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
题解
class Solution {
Set<Character> 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]) && i<j) {
i++;
}
while (!set.contains(chars[j]) && i<j) {
j--;
}
if (i < j) {
char tmp = chars[i];
chars[i] = chars[j];
chars[j] = tmp;
i++;
j--;
}
}
return new String(chars);
}
}
小结
这里先使用HashSet存放大小写的元音字母,之后使用头尾指针同时对字符串数组进行遍历,当i指向的字符与j指向的字符都是元音时,进行交换同时更新指针,不是元音字符时仅仅更新指针。
doc
版权声明
本文为[go4it]所创,转载请带上原文链接,感谢
https://my.oschina.net/go4it/blog/4708427
边栏推荐
- Swagger介绍和应用
- Computer network application layer
- Select sort
- Problem solving templates for subsequence problems in dynamic programming
- Server side resolution of lengthfieldbasedframedecoder of GetBytes
- Iterm2 configuration and beautification
- 经典动态规划:最长公共子序列
- 使用递增计数器的线程同步工具 —— 信号量,它的原理是什么样子的?
- leetcode之反转字符串中的元音字母
- [200 interview experience], programmer interview, common interview questions analysis
猜你喜欢
On buffer overflow
Five design schemes of singleton mode
What courses will AI programming learn?
To introduce to you, this is my flow chart software—— draw.io
Using annotation + interceptor to implement asynchronous execution
动态规划之子序列问题解题模板
Newbe.ObjectVisitor 样例 1
给大家介绍下,这是我的流程图软件 —— draw.io
解决go get下载包失败问题
Python的特性与搭建环境
随机推荐
使用递增计数器的线程同步工具 —— 信号量,它的原理是什么样子的?
Five design schemes of singleton mode
基于链表的有界阻塞队列 —— LinkedBlockingQueue
都说程序员钱多空少,程序员真的忙到没时间回信息了吗?
动态规划之子序列问题解题模板
Constructors and prototypes
解决IE、firefox浏览器下JS的new Date()的值为Invalid Date、NaN-NaN的问题
Python的特性与搭建环境
Array acquaintance
Factory pattern pattern pattern (simple factory, factory method, abstract factory pattern)
Newbe.ObjectVisitor 样例 1
Decorator (1)
Queue with two stacks
STS安装
To introduce to you, this is my flow chart software—— draw.io
深拷贝
非阻塞的无界线程安全队列 —— ConcurrentLinkedQueue
解决go get下载包失败问题
C / C + + learning diary: original code, inverse code and complement code
APP 莫名崩溃,开始以为是 Header 中 name 大小写的锅,最后发现原来是容器的错!