Skip to content

Commit 19214f8

Browse files
solves reverse prefix of word
1 parent eef0fc5 commit 19214f8

File tree

2 files changed

+20
-1
lines changed

2 files changed

+20
-1
lines changed

Diff for: README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -478,7 +478,7 @@
478478
| 1984 | [Minimum Difference Between Highest and Lowest of K Scores](https://leetcode.com/problems/minimum-difference-between-highest-and-lowest-of-k-scores) | [![Java](assets/java.png)](src/MinimumDifferenceBetweenHighestAndLowestOfKScores.java) | |
479479
| 1991 | [Find the Middle Index in Array](https://leetcode.com/problems/find-the-middle-index-in-array) | [![Java](assets/java.png)](src/FindTheMiddleIndexInArray.java) | |
480480
| 1995 | [Count Special Quadruplets](https://leetcode.com/problems/count-special-quadruplets) | [![Java](assets/java.png)](src/CountSpecialQuadruplets.java) | |
481-
| 2000 | [Reverse Prefix of Word](https://leetcode.com/problems/reverse-prefix-of-word) | | |
481+
| 2000 | [Reverse Prefix of Word](https://leetcode.com/problems/reverse-prefix-of-word) | [![Java](assets/java.png)](src/ReversePrefixOfWord.java) | |
482482
| 2006 | [Count Number of Pairs With Absolute Difference K](https://leetcode.com/problems/count-number-of-pairs-with-absolute-difference-k) | | |
483483
| 2011 | [Final Value of Variable After Performing Operations](https://leetcode.com/problems/final-value-of-variable-after-performing-operations) | | |
484484
| 2016 | [Maximum Difference Between Increasing Elements](https://leetcode.com/problems/maximum-difference-between-increasing-elements) | | |

Diff for: src/ReversePrefixOfWord.java

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
// https://leetcode.com/problems/reverse-prefix-of-word
2+
// T: O(|word|)
3+
// S: O(|word|)
4+
5+
public class ReversePrefixOfWord {
6+
public String reversePrefix(String word, char ch) {
7+
final StringBuilder result = new StringBuilder();
8+
boolean encounteredChar = false;
9+
for (int i = 0 ; i < word.length() ; i++) {
10+
if (!encounteredChar && word.charAt(i) == ch) {
11+
result.append(word.charAt(i)).reverse();
12+
encounteredChar = true;
13+
} else {
14+
result.append(word.charAt(i));
15+
}
16+
}
17+
return result.toString();
18+
}
19+
}

0 commit comments

Comments
 (0)