---
# System prepended metadata

title: 反转字符串中的单词 III
tags: [LeeCode]

---

# 反转字符串中的单词 III
---

```javascript=
给定一个字符串，你需要反转字符串中每个单词的字符顺序，同时仍保留空格和单词的初始顺序。

示例：

输入："Let's take LeetCode contest"
输出："s'teL ekat edoCteeL tsetnoc"

提示：

在字符串中，每个单词由单个空格分隔，并且字符串中不会有任何额外的空格。
```

:::success
```go=
func reverseWords(s string) string {
	result := strings.Split(s, " ")
	resp := make([]string, 0)
	for _, value := range result {
		resp = append(resp, reverseString([]byte(value)))
	}
	return strings.Join(resp, " ")
}

func reverseString(s []byte) string {
	for left, right := 0, len(s) - 1; left < right; left, right = left+1, right-1 {
		s[left], s[right] = s[right], s[left]
	}
	return string(s)
}
```
:::

###### tags: `LeeCode`