Files
obsidian/АиСД/Задачи/LeetCode/Reverse Words in a String III.md
T
roma-dxunvrs 0e6e583e6d
deploy / Pull and Restart (push) Successful in 17s
refactor: wiki links -> md links
2026-09-22 08:52:23 +03:00

24 lines
1007 B
Markdown

Leetcode #557 | #Easy | [Два указателя](../../Методы/Два%20указателя.md)
## Идея
Сплитим строку на массив слов, идем по массиву, каждое слово представляем как массив символов, через два указателя навстречу друг другу реверсим строку. Возвращаем строку через String.join
## Big-O
- Время ```O(N)```
- Память ```O(N)```
## Код
```Java
class Solution {
public String reverseWords(String s) {
String[] words = s.split(" ");
for (int i = 0; i < words.length; i++) {
char[] arr = words[i].toCharArray();
int l = 0, r = arr.length - 1;
while (l < r) {
char temp = arr[l]; arr[l] = arr[r]; arr[r] = temp;
l++; r--;
}
words[i] = new String(arr);
}
return String.join(" ", words);
}
}
```