[345]Reverse Vowels of a String

原创 2016年08月31日 11:01:18

【题目描述】

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".

【解题思路】

逆转字符串里的元音字母,二分搜索的变形,要注意的是元音字母的大写也算是元音

【代码】

class Solution {
public:
    bool isvowel(char c){
        if(c=='a'||c=='e'||c=='i'||c=='o'||c=='u') return true;
        if(c=='A'||c=='E'||c=='I'||c=='O'||c=='U') return true;
        return false;
    }
    string reverseVowels(string s) {
        int len=s.length();
        int i=0,j=len-1;
        while(i<j){
            if(isvowel(s[i])&&isvowel(s[j])){
                char temp=s[i];
                s[i]=s[j];
                s[j]=temp;
                i++;
                j--;
            }
            else if(isvowel(s[i])){
               j--;
            }
            else if(isvowel(s[j])){
                i++;
            }
            else{
                i++;
                j--;
            }
        }
        return s;
    }
};


版权声明:本文为博主原创文章,未经博主允许不得转载。

【leetcode】 Reverse Vowels of a String(翻转字符串中出现的元音字母)

题目 Write a function that takes a string as input and reverse only the vowels of a string. Exa...
  • lizhidefengzi
  • lizhidefengzi
  • 2017年04月21日 12:41
  • 273

C/C++ 字符串reverse总结

总结一下 字符串reverse的几种操作,包括C C++风格的: 一种思想是就地利用一个tmp首尾swap,char* 和String都一样 char* void Reverse(char ...
  • richardzrc
  • richardzrc
  • 2014年06月14日 15:16
  • 2015

java 实现字符串反转

字符串的反转可以使用递归,交换排序等方法。简单整理了几个可以实现字符串反转的方法 package com.mianshi.test; import java.util.Stack; /** *...
  • w410589502
  • w410589502
  • 2017年02月16日 10:21
  • 409

倒置函数reverse的用法

倒置字符串函数reverse:用于倒置字符串s中的各个字符的位置,如原来字符串中如果初始值为123456,则通过reverse函数可将其倒置为654321,程序如下: #include #includ...
  • leafinsnowfield
  • leafinsnowfield
  • 2014年10月06日 16:53
  • 624

递归算法的学习

此之前对递归的认识: 1.递归可以通过参数实现循环结构那种计数器进行替换 2.简单的尾递归与迭代等价,空间资源消耗也一样 3.相对于迭代常用的循环结构,递归用判断结构,并且要有出口 题...
  • baidu_32880691
  • baidu_32880691
  • 2015年11月17日 14:22
  • 252

关于LeetCode中Reverse String一题的理解

题目: Write a function that takes a string as input and returns the string reversed.
  • zsy112371
  • zsy112371
  • 2016年08月22日 19:44
  • 163

算法题 用C或C++实现void reverse(char* str)函数,即反转一个null结尾的字符串

用C或C++实现void reverse(char* str)函数,即反转一个null结尾的字符串
  • fumier
  • fumier
  • 2015年01月15日 10:32
  • 1526

leetcode_345. Reverse Vowels of a String 转换字符串中的元音字符,list类型数据转换成str类型,join()函数

题目: Write a function that takes a string as input and reverse only the vowels of a string. Exampl...
  • qqzj_bupt
  • qqzj_bupt
  • 2016年10月26日 22:05
  • 266

js中的join(),reverse()与 split()函数用法解析

js中的join(),reverse()与 split()函数用法解析及其拓展
  • u014593098
  • u014593098
  • 2014年09月08日 17:24
  • 8063

采用Hibernate Reverse Engineering工具遇到的问题及解决方法

我用的是MyEclipse6.0.1的开发工具,没有采用MyEclipse的Hibernate工具去自动生成实体类,而是手工自己编写hibernate的配置文件。 问题1: ...
  • zhifeng172
  • zhifeng172
  • 2013年02月22日 18:42
  • 1552
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:[345]Reverse Vowels of a String
举报原因:
原因补充:

(最多只允许输入30个字)