345. Reverse Vowels of a String
Difficulty: Easy
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".
说明:这里是翻转字符串中的原音,
比如字符串是:a, e, i , o, u
你们翻转过来就是 u, o, i, e, a; 第一个和最后一个,第二个和到二个。
遍历是最简单的方法,设置 left和right,两个坐标,分别从数组的头部和尾部逐渐开始遍历,遇到元音停下,遇到非元音分别往中间靠拢,直到两边都遇到元音,交换,再同时靠拢,终止条件是left>=right。
代码:
public class Solution { public String reverseVowels(String s) { char[] sArray = s.toCharArray(); int length = sArray.length; int position = -1; int left = 0; char[] result = {'A', 'E', 'I', 'O', 'U','a', 'e', 'i', 'o', 'u', }; int right = sArray.length - 1; while (left < right) { char leftChar = sArray[left]; int leftifin = Arrays.binarySearch(result, leftChar); if (leftifin < 0) { left ++; } char rigthChar = sArray[right]; int rightifin = Arrays.binarySearch(result, rigthChar); if (rightifin < 0) { right --; } if(leftifin >= 0 && rightifin >= 0) { char temp = sArray[left]; sArray[left] = sArray[right]; sArray[right] = temp; left ++; right --; } } return new String(sArray); } }
相关推荐
13-3 LeetCode:198. 打家劫舍.mp4
12-5 LeetCode:101. 对称二叉树.mp4
12-3 LeetCode:226. 翻转二叉树.mp4
14-2 LeetCode:455. 分饼干.mp4
13-2 LeetCode:70. 爬楼梯.mp4
15-3 LeetCode:78. 子集 (2).mp4
15-2 LeetCode:46. 全排列 (2).mp4
10-5 LeetCode:23. 合并K个排序链表.mp4
10-4 LeetCode:347. 前 K 个高频元素.mp4
11-9 LeetCode:21. 合并两个有序链表.mp4
14-3 LeetCode:122. 买卖股票的最佳时机 II.mp4
12-2 LeetCode:374. 猜数字大小 (2).mp4
12-4 LeetCode:100. 相同的树 (2).mp4
10-3 LeetCode:215. 数组中的第 K 个最大元素.mp4
2、解题思路一开始没有理解题意,实际上,这道题目描述不够清楚基本题意如下:数组的下标,对应一个偏移量,表示下一步能够到达的下标举个例子输入:我们将每一个下标,都
2、解题思路 设置一个不重复位置指针,另一个向前移动,每一次都判断之前的是不是重复 如果重复,当前指针直接加一 不重复,将不重复指针加一,并将当前值复制过
Reverse Vowels of a String,完整代码可在编译器上运行
在IDE中解决LeetCode问题,支持leetcode.com与leetcode-cn.com,满足基本的做题需求。 理论上支持: IntelliJ IDEA PhpStorm WebStorm PyCharm RubyMine AppCode CLion GoLand DataGrip Rider MPS Android Studio。
《LeetCode与在线判题平台:深度探索与实践》 在编程领域,LeetCode和Online Judge(OJ)系统如oj.leetcode.com是提升技能、准备面试和挑战自我的重要工具。本文将深入探讨这两个平台的功能、使用方法以及它们如何...
leetcode 不会394.-解码字符串-c-Leetcode 给定一个编码字符串,返回它的解码字符串。 编码规则是:k[encoded_string],其中方括号内的encoded_string 正好重复k 次。 请注意,k 保证为正整数。 您可以假设输入字符...