力扣反转字符串中的元音字母

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

元音字母包括 ‘a’、‘e’、‘i’、‘o’、‘u’,且可能以大小写两种形式出现。
代码思路:
1.将字符串转换为字符数组
2.设置碰撞指针,从两头寻找元音字母
3.将元音字母交换

class Solution {public String reverseVowels(String s) {int n = s.length();int left = 0;int right = n-1;char[] arr = s.toCharArray();//将字符串转换为字符数组//设置碰撞指针,从两头寻找元音字母while(left<right){while(left<right&&!isVowel(arr[left])){left++;}while(left<right&&!isVowel(arr[right])){right--;}//将元音字母交换if(left<right){swap(left,right,arr);left++;right--;}}return new String(arr);}//判断是否为元音public boolean isVowel(char ch){return "aeiouAEIOU".indexOf(ch)>=0;}//交换public void swap(int left,int right,char[] arr){char temp = arr[left];arr[left] = arr[right];arr[right] = temp;}
}

1.当问题比较复杂时,可以在类里面设置方法,模块化,重用性提高,也比较明白易懂
2.返回字符串:

return new String(arr);

和返回数组比较:

return new int[]{-1, -1};

都是
return new 数据类型(参数)/{参数 }

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/374729.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用 SqlDataSource 插入、更新和删除数据49

简介 正如在 数据插入、更新和删除概述 中讨论的那样&#xff0c;GridView 控件提供内置的更新和删除功能&#xff0c;而DetailsView 和 FormView 控件则包含对插入、编辑和删除功能的支持。这些数据修改功能无需编写任何代码&#xff0c;可直接嵌入数据源控件。 数据插入、更新…

Solaris是出色的Java开发平台的原因

几天前&#xff0c;我发布了“ OpenSolaris的死亡&#xff1a;为Java开发人员选择操作系统 ”&#xff0c;其中我说Solaris是Java开发人员的绝佳平台。 这篇文章的重点只是想知道自OpenSolaris淘汰以来我将使用哪个Solaris版本。 正如Neil的评论使我意识到的那样&#xff0c;该…

python , angular js 学习记录【2】

1.不同scope之间的通信 &#xff08;1&#xff09;无父子关系的scope通信&#xff1a; 在需要操作的scope里面定义一个事件&#xff0c;名称为delete_host&#xff0c;参数为data $rootScope.$on(delete_host, function(event,data) {angular.forEach($scope.hosts, function (…

【转】phpize学习

为什么使用phpize? 比如刚开始安装的时候使用 ./configure --prefix/usr/local/php7 --exec-prefix/usr/local/php7 --bindir/usr/local/php7/bin --sbindir/usr/local/php7/sbin --includedir/usr/local/php7/include --libdir/usr/local/php7/lib/php --mandir/usr/local/ph…

GWT 2 Spring 3 JPA 2 Hibernate 3.5教程– Eclipse和Maven 2展示

不久前&#xff0c;我的一个朋友和同事向我飞过&#xff0c;说“世界上只有一半在使用Maven ”。 当我意识到最受欢迎的文章&#xff08;到目前为止&#xff09; GWT 2 Spring 3 JPA 2 Hibernate 3.5 Tutorial提出了一种基于Google的Web Toolkit&#xff08; GWT &#xff09; …

Android的WiFi开启与关闭

注意&#xff1a;要首先注册开启和关闭WiFi的权限&#xff0c; <?xml version"1.0" encoding"utf-8"?> <manifest xmlns:android"http://schemas.android.com/apk/res/android"package"com.wyl.wifi"android:versionCode&q…

awk用法小结(作者总结)

http://www.chinaunix.net/old_jh/24/691456.htmlhttp://wenku.baidu.com/view/ebac4fc658f5f61fb736664d.htmlawk 用法&#xff1a;awk pattern {action} 变量名 含义 ARGC 命令行变元个数 ARGV 命令行变元数组 FILENAME 当前输入文件名 FNR 当前文件中的记录号 FS 输入域分…

力扣盛最多水的容器

给你 n 个非负整数 a1&#xff0c;a2&#xff0c;…&#xff0c;an&#xff0c;每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线&#xff0c;垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0) 。找出其中的两条线&#xff0c;使得它们与 x 轴共同构成的容器可以容纳最多…

Java最佳实践–多线程环境中的DateFormat

这是有关使用Java编程语言时的拟议实践的系列文章的第一篇。 所有讨论的主题均基于用例&#xff0c;这些用例来自于电信行业的关键任务超高性能生产系统的开发。 在阅读本文的每个部分之前&#xff0c;强烈建议您参考相关的Java API文档以获取详细信息和代码示例。 所有测试…

IntentDemo

Intent通信示例&#xff1a; 两个Button&#xff0c;一个startBrowser, 一个startPhone. 其中&#xff0c;OnClickListener()是类View的一个interface&#xff0c;需要实现其中的onClick()函数。 startActivity()开启另一个Activity&#xff0c;本示例中开启Browser或Phone. In…

JBoss 4.2.x Spring 3 JPA Hibernate教程

在花了许多时间在网上搜索之后&#xff0c;尝试找到对几个项目使用Spring&#xff0c;JPA和Hibenate的最有效方法&#xff0c;我们得出了将在下面介绍的配置的结论。 将Spring与JPA和Hibernate集成包括几个步骤&#xff1a; Spring容器的配置 JPA ORM层的配置 Hibernate Sec…

力扣长度最小的子数组

给定一个含有 n 个正整数的数组和一个正整数 target 。 找出该数组中满足其和 ≥ target 的长度最小的 连续子数组 [numsl, numsl1, …, numsr-1, numsr] &#xff0c;并返回其长度。如果不存在符合条件的子数组&#xff0c;返回 0 方法一&#xff1a;移动窗口 设置两个指针&…

Yeelink:将复杂的传感器以极简的方式组到同一个网络内

Yeelink&#xff1a;将复杂的传感器以极简的方式组到同一个网络内转载于:https://www.cnblogs.com/qxql2016/p/4692629.html

androidstudio新建项目中在布局文件中不显示title的方法

在androidstudio新建项目的时候&#xff0c;在布局文件里有时候会出现如下情况&#xff1a; 上面的标题栏非常碍眼&#xff0c;要想隐藏标题栏的话&#xff0c;可以在Manifest文件的theme标签里进行配置&#xff0c;自定义一个theme&#xff0c;加上如下两句。或者直接在当前th…

OpenJDK作为Linux上的默认Java

大家好&#xff0c; 最近&#xff0c;我收到了很多人的私人来信&#xff0c;他们对Linux的默认Java软件包的更改感到困惑/担心。 对于许多Linux发行版&#xff0c;Java的Sun / Oracle官方版本已打包为该平台的默认Java。 但是&#xff0c;由于最近的许可更改&#xff0c;情况将…

力扣 数组中的第K个最大元素

给定整数数组 nums 和整数 k&#xff0c;请返回数组中第 k 个最大的元素。 请注意&#xff0c;你需要找的是数组排序后的第 k 个最大的元素&#xff0c;而不是第 k 个不同的元素。 分析&#xff1a;这是个排序题&#xff0c;只要排好序&#xff0c;一切迎刃而解。我决定把排序…

Ajax应用需要注意的事项

接触Ajax&#xff0c;那时候的Ajax支持还不是很好&#xff0c;都要涉及底层&#xff0c;没有现成的框架给你调用。现在把常见的问题列举如下。 1、编码问题 注意AJAX要取的文件是UTF-8编码的。GB2312编码传回BROWSE后中文会乱码。如果用VBScript的话还可以转化&#xff0c;但是…

Xcode插件

古人云“工欲善其事必先利其器”&#xff0c;打造一个强大的开发环境&#xff0c;是立即提升自身战斗力的绝佳途径&#xff01;以下是搜集的一些有力的XCode插件。1.全能搜索家CodePilot 2.0你要找的是文件&#xff1f;是文件夹&#xff1f;是代码&#xff1f;Never Mind&#…

JBoss Portal上的“ Hello World” portlet

Portlet概述 本教程将向您展示如何创建和部署简单的Portlet。 Portlet是基于Java技术的Web组件&#xff0c;可以处理请求并生成动态内容。 Portlet不是自治实体&#xff0c;但是由Portlet容器管理&#xff0c;Portlet容器为Portlet执行提供了必要的运行时环境。 应当注意&…

Jenkins + GitHub + fir-cli 一行命令从源码到fir.im

上周简书作者宣X_x 分享了一篇文章——用JenkinsGitHubXcodefir搭了一个持续集成环境&#xff0c;整个记录见(传送门)。 _______ 其实fir.im为我们提供了一个更简单的方式&#xff1a;fir-cli&#xff0c;我们只需要一条命令&#xff0c;就可以从源代码到fir.im。不需要Jenkin…