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

题目

https://leetcode-cn.com/problems/reverse-vowels-of-a-string/

解法

双指针 666

来全场跟我左边画条龙,右边跟我画一道彩虹

class Solution {
const VOWELS = ['a' => 1, 'e' => 1, 'i' => 1, 'o' => 1, 'u' => 1];
function reverseVowels($s) {
if (empty($s)) {
return $s;
}
$len = strlen($s);
$left = 0;
$right = $len - 1;
while ($left < $right) {
while (!array_key_exists(strtolower($s[$left]), self::VOWELS) && $left < $right) {
$left++;
continue;
}
$leftChar = $s[$left];
while (!array_key_exists(strtolower($s[$right]), self::VOWELS) && $left < $right) {
$right--;
continue;
}
$rightChar = $s[$right];
$s[$left] = $rightChar;
$s[$right] = $leftChar;
$left++;
$right--;
}
return $s;
}
}
posted @   吴丹阳-V  阅读(44)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示