题目

给你一个字符串 s ,仅反转字符串中的所有元音字母,并返回结果字符串。

元音字母包括 ‘a’、‘e’、‘i’、‘o’、‘u’,且可能以大小写两种形式出现。

示例

输入:s = “hello”
输出:“holle”

输入:s = “leetcode”
输出:“leotcede”

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/reverse-vowels-of-a-string
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

方法1:双指针

Java实现
class Solution {public String reverseVowels(String s) {int n = s.length();List<Character> list = new ArrayList<>();list.add('a');list.add('e');list.add('i');list.add('o');list.add('u');list.add('A');list.add('E');list.add('I');list.add('O');list.add('U');char[] cs = s.toCharArray();int l = 0, r = n - 1;while (l < r) {while (l < r && !list.contains(cs[l])) l++;while (l < r && !list.contains(cs[r])) r--;char tmp = cs[l];cs[l] = cs[r];cs[r] = tmp;l++;r--;}return String.valueOf(cs);}
}

力扣 345. 反转字符串中的元音字母相关推荐

  1. 345. 反转字符串中的元音字母

    345. 反转字符串中的元音字母 给你一个字符串 s ,仅反转字符串中的所有元音字母,并返回结果字符串. 元音字母包括 'a'.'e'.'i'.'o'.'u',且可能以大小写两种形式出现. 示例 1: ...

  2. Java实现 LeetCode 345 反转字符串中的元音字母

    345. 反转字符串中的元音字母 编写一个函数,以字符串作为输入,反转该字符串中的元音字母. 示例 1: 输入: "hello" 输出: "holle" 示例 ...

  3. 345.反转字符串中的元音字母(Reverse Vowels of a String)

    题目描述 编写一个函数,以字符串作为输入,反转该字符串中的元音字母. 示例 1: 给定 s = "hello", 返回 "holle". 示例 2: 给定 s ...

  4. LeetCode 345. 反转字符串中的元音字母

    1. 题目 编写一个函数,以字符串作为输入,反转该字符串中的元音字母. 示例 1: 输入: "hello" 输出: "holle"示例 2: 输入: " ...

  5. Leetcode 345. 反转字符串中的元音字母 解题思路及C++实现

    解题思路: 设置两个指针 left 和 right,大循环中的每一个循环,找到前面.后面两个元音字母,然后交换这两个元音. class Solution { public:bool whethertr ...

  6. 反转字符串中的元音字母

    345. 反转字符串中的元音字母 给你一个字符串 s ,仅反转字符串中的所有元音字母,并返回结果字符串. 元音字母包括 'a'.'e'.'i'.'o'.'u',且可能以大小写两种形式出现. 示例 1: ...

  7. 20200320:反转字符串中的元音字母(leetcode345)

    反转字符串中的元音字母 题目 思路与算法 代码实现 复杂度分析 题目 思路与算法 在复习没太多时间,因此随机一道中等难度以下的题,这道是一个很简单的双指针,不需要太多想法,直接双指针实现即可. 左指针 ...

  8. Leetcode每日一题:345.reverse-vowels-of-a-string(反转字符串中的元音字母)

    思路:这道题有很多种办法解决,比如用一个vector存字符串中元音字母的索引,然后反转,或者用一个字符串res存原字符串中的元音字母(倒着存,从len-1开始遍历啊),然后遍历原字符串,把原来位置的元 ...

  9. 算法--------数组------反转字符串中的元音字母

    编写一个函数,以字符串作为输入,反转该字符串中的元音字母.示例 1:输入: "hello" 输出: "holle" 示例 2:输入: "leetcod ...

最新文章

  1. 苹果企业证书_今日更新:丨企业证书已更新丨苹果丨安卓软件下载说明丨
  2. java连接字符串_Java字符串连接运算符
  3. java里注释为什么报错_这些年我们在java中遇到过的坑,你遇到过几个
  4. python3.4用循环往mysql5.7中写数据并输出
  5. ARM汇编:汇编中proc、endp、ret、near、far指令用法
  6. DVB-C系统中QAM调制与解调仿真
  7. 基于梅尔频谱的音频信号分类识别(Pytorch)
  8. C#实现ByteBuffer类 .
  9. P3830-[SHOI2012]随机树【数学期望,dp】
  10. Socket的3次握手链接与4次断开握手
  11. 前端面试题目笔记-5
  12. 无刷新二级联动菜单的Request问题
  13. 一天赚148万元,科大讯飞2018年净利润达5.42亿,但53%为政府补助
  14. 复制链接到safari浏览器打开_APP应用内嵌h5页面怎么直接打开Safari来访问链接?
  15. OpenStack Queens版本Barbican项目介绍
  16. 使用whistle实现移动网页(H5、公众号、企微应用)的本地开发及调试
  17. alios是安卓吗_鸿蒙OS系统被质疑,谷歌也有新布局!阿里云OS事件会再现吗?
  18. php随机码生成有数字英文,用php生成一个可选位数的数字和英文随机码
  19. 怎么彻底删除office注册表信息?
  20. Cubase v5.1.1 macOS (移植版)音乐制作软件下载

热门文章

  1. 考研数学汤家凤笔记第一章:极限与连续
  2. 用Javascript实现关闭广告案例
  3. 用php如何写后台数据,PHP后端接口怎么写
  4. HTML5系列代码:个人页面
  5. 七、使用OpenCV徒手实现:RGB转HSI,并提取红色
  6. cuda FORTRAN 统一内存 managed
  7. windows 2008 r2 sharepoint 2007 文档库 在windows资源管理器打开问题
  8. stm32 GPIO_Write
  9. ROX-Filer 2.6
  10. 用CSS画小猪佩奇,你就是下一个社会人!