当前位置: 面试刷题>> 单词反转 (经典算法题500道)
### 题目描述补充
**题目:单词反转**
给定一个字符串,该字符串由若干由空格分隔的单词组成,请编写一个函数来反转字符串中每个单词的字符顺序,同时保持单词之间的相对位置不变。
**示例**:
输入: "Let's take LeetCode contest"
输出: "s'teL ekat edoCteeL tsetnoc"
**注意**:
- 输入字符串只包含小写字母和空格。
- 单词之间由单个空格分隔,且字符串首尾不会有空格。
### PHP 示例代码
```php
function reverseWords($s) {
// 将字符串按空格分割成单词数组
$words = explode(" ", $s);
// 反转每个单词
foreach ($words as &$word) {
$word = strrev($word);
}
// 将反转后的单词重新组合成字符串
return implode(" ", $words);
}
// 测试
$input = "Let's take LeetCode contest";
$output = reverseWords($input);
echo $output; // 输出: s'teL ekat edoCteeL tsetnoc
```
### Python 示例代码
```python
def reverseWords(s):
# 将字符串按空格分割成单词列表
words = s.split()
# 反转每个单词
reversed_words = [word[::-1] for word in words]
# 将反转后的单词列表重新组合成字符串
return ' '.join(reversed_words)
# 测试
input_str = "Let's take LeetCode contest"
output_str = reverseWords(input_str)
print(output_str) # 输出: s'teL ekat edoCteeL tsetnoc
```
### JavaScript 示例代码
```javascript
function reverseWords(s) {
// 将字符串按空格分割成单词数组
const words = s.split(' ');
// 反转每个单词
const reversedWords = words.map(word => word.split('').reverse().join(''));
// 将反转后的单词数组重新组合成字符串
return reversedWords.join(' ');
}
// 测试
const input = "Let's take LeetCode contest";
const output = reverseWords(input);
console.log(output); // 输出: s'teL ekat edoCteeL tsetnoc
```
**码小课网站中有更多相关内容分享给大家学习**,包括但不限于数据结构与算法、编程语言进阶、面试技巧等,欢迎访问码小课网站获取更多学习资源。