Skip to content

Commit e74dfac

Browse files
solves reverse words in string iii
1 parent 72671da commit e74dfac

File tree

3 files changed

+22
-1
lines changed

3 files changed

+22
-1
lines changed

Diff for: README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -145,7 +145,7 @@
145145
| 541 | [Reverse String II](https://leetcode.com/problems/reverse-string-ii) | Easy | [![Java](assets/java.png)](src/ReverseStringII.java/) [![Python](assets/python.png)](python/reverse_string_ii.py) |
146146
| 543 | [Diameter of Binary Tree](https://leetcode.com/problems/diameter-of-binary-tree) | Easy | [![Java](assets/java.png)](src/DiameterOfBinaryTree.java) [![Python](assets/python.png)](python/diameter_of_binary_tree.py) |
147147
| 551 | [Student Attendance Record I](https://leetcode.com/problems/student-attendance-record-i) | Easy | [![Java](assets/java.png)](src/StudentAttendanceRecordI.java) [![Python](assets/python.png)](python/student_attendance_record_I.py) |
148-
| 557 | [Reverse Words in a String III](https://leetcode.com/problems/reverse-words-in-a-string-iii) | Easy | |
148+
| 557 | [Reverse Words in a String III](https://leetcode.com/problems/reverse-words-in-a-string-iii) | Easy | [![Java](assets/java.png)](src/ReverseWordsInStringIII.java) [![Python](assets/python.png)](python/reverse_words_in_string_iii.py) |
149149
| 559 | [Maximum Depth of N-Ary Tree](https://leetcode.com/problems/maximum-depth-of-n-ary-tree) | Easy | |
150150
| 561 | [Array Partition I](https://leetcode.com/problems/array-partition-i) | Easy | |
151151
| 563 | [Binary Tree Tilt](https://leetcode.com/problems/binary-tree-tilt) | Easy | |

Diff for: python/reverse_words_in_string_iii.py

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
class Solution:
2+
def reverseWords(self, s: str) -> str:
3+
result = ''
4+
for word in s.split():
5+
result += word[::-1] + ' '
6+
return result[:-1]

Diff for: src/ReverseWordsInStringIII.java

+15
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
public class ReverseWordsInStringIII {
2+
public String reverseWords(String s) {
3+
StringBuilder result = new StringBuilder(), buffer = new StringBuilder();
4+
for (int index = 0 ; index < s.length() ; index++) {
5+
if (s.charAt(index) == ' ') {
6+
result.append(result.length() == 0 ? "" : ' ').append(buffer.reverse());
7+
buffer = new StringBuilder();
8+
} else {
9+
buffer.append(s.charAt(index));
10+
}
11+
}
12+
result.append(result.length() == 0 ? "" : ' ').append(buffer.reverse());
13+
return result.toString();
14+
}
15+
}

0 commit comments

Comments
 (0)