当前位置:网站首页>力扣每日一题-第48天-345. 反转字符串中的元音字母
力扣每日一题-第48天-345. 反转字符串中的元音字母
2022-08-04 11:50:00 【重邮研究森】
2022.8.4今天你刷题了吗?
题目:
给你一个字符串 s
,仅反转字符串中的所有元音字母,并返回结果字符串。
元音字母包括 'a'
、'e'
、'i'
、'o'
、'u'
,且可能以大小写两种形式出现。
分析:
这里主要是反转需要注意,反转是指:对于a和e,那么变为e和a,主要情况如下:
hello,那么就是holle
ceeop,那么就是ceoep。
qee,那么就是qee
也就是说反转的话只要是元音你就可以反,至于是不是一样的元音不影响结果。
思路:利用两个指针,一个从0开始,一个从末尾开始,从左至右和从右向左开始,依次找到元音字母,判断此时满足左<右,然后进行交换,然后再进行左->右遍历和右->左遍历。
解析:
1.双指针
class Solution {
public:
string reverseVowels(string s) {
int i = 0, j = s.size() - 1;
string tool = "aoeiuAOEIU";
while (i < j)
{
while (tool.find(s[i]) == -1 && i < j)//没找到
++i;
while (tool.find(s[j]) == -1 && i < j)
--j;
if (i < j)
swap(s[i++], s[j--]);
}
return s;
}
};
边栏推荐
猜你喜欢
UMA & Hong Kong Polytechnic & Ali propose SP-ViT to learn 2D space prior knowledge for visual Transformer!
Shell loop statement (for, while, until)
Leetcode brush questions - 543. Diameter of binary trees, 617. Merging binary trees (recursive solution)
UMA&港理工&阿里提出SP-ViT,为视觉Transformer学习2D空间先验知识!
Share | technology integration electronic fence function of scheduling system
如何做好企业数字化转型?这10份靠谱案例收藏了(附下载)
Disc burning steps
11. Network planning and design
Leetcode刷题——构造二叉树(105. 从前序与中序遍历序列构造二叉树、106. 从中序与后序遍历序列构造二叉树)
复盘:经典的HR面试问题,这些问题可以挖掘你个人的素质,看看你是否合适合我们部门
随机推荐
中电资讯 - 一路“标”升,喜迎Q3开门红
The use of DDR3 (Naive) in Xilinx VIVADO (3) simulation test
多表查询
Tapdata 开源项目基础教程:功能特性及实操演示
揭秘交换机市场内幕,“准工业级”猫腻你中招了吗?
244 page PDF!"2022 China cloud computing ecological blue book published
MTBF是什么意思?交换机做MTBF有什么要求?MTTF、MTBF和MTTR的区别是什么?
动手学深度学习_LeNet
Apache Doris 1.1 特性揭秘:Flink 实时写入如何兼顾高吞吐和低延时
POJ1094Sorting It All Out题解
Hands-on Deep Learning_LeNet
The use of DDR3 (Naive) in Xilinx VIVADO (2) Read and write design
cat /proc/kallsyms 发现内核符号表值都为0
活动报名:如何高效应对当下的实时场景需求?
SchedulX V1.5.0发布,提供快速压测、对象存储等全新功能!
小程序实战(三) - head组件的封装与使用
复盘:经典的HR面试问题,这些问题可以挖掘你个人的素质,看看你是否合适合我们部门
Leetcode刷题——二叉搜索树相关题目(98. 验证二叉搜索树、235. 二叉搜索树的最近公共祖先、1038. 从二叉搜索树到更大和树、538. 把二叉搜索树转换为累加树)
HyperLynx仿真(一)LineSim简单介绍
Flutter 使用 json_serializable 解析 JSON 支持泛型