345. Reverse Vowels of a String
class Solution {
/**
* @param String $s
* @return String
*/
function reverseVowels($s) {
$vowels = [ 'a', 'e', 'i', 'o', 'u', 'A', 'E', 'I', 'O', 'U'];
$start = 0;
$end = strlen($s) - 1;
while($start < $end) {
$startIsVowel = in_array($s[$start], $vowels);
$endIsVowel = in_array($s[$end], $vowels);
if ($startIsVowel && $endIsVowel) {
[$s[$start], $s[$end]] = [$s[$end], $s[$start]];
$start++;
$end--;
} elseif($startIsVowel) {
$end--;
} elseif($endIsVowel) {
$start++;
} else {
$end--;
$start++;
}
}
return $s;
}
}
Last updated