# [LeetCode 75] DAY 5 - Reverse Vowels of a String
## 題目:
Given a string `s`, reverse only all the vowels in the string and return it.
The vowels are `'a'`, `'e'`, `'i'`, `'o'`, and `'u'`, and they can appear in both lower and upper cases, more than once.
## 解題思考
- 遍歷 `s` 儲存原字串所有字母(aeiou)放入 `arr`
- 遍歷 `s` 當遇到字母時 放入 `arr` 的最後一個元素(`pop()`)
## 程式碼
```javascript
function reverseVowels(s) {
const vowels = ['a', 'e', 'i', 'o', 'u'];
let arr = [];
let result = s.split('');
for (let i = 0; i < s.length; i++) {
if (vowels.includes(s[i])) {
arr.push(s[i])
}
}
for (let i = 0; i < s.length; i++) {
if (vowels.includes(s[i])) {
result[i] = arr.pop()
}
}
return result.join('');
};
```
## 延伸思考
- 字串的不可變性
- Two Pointers
## 相關資源
- [345. Reverse Vowels of a String](https://leetcode.com/problems/reverse-vowels-of-a-string/description/)