2000. Reverse Prefix of Word LeetCode Solution

In this guide, you will get 2000. Reverse Prefix of Word LeetCode Solution with the best time and space complexity. The solution to Reverse Prefix of Word problem is provided in various programming languages like C++, Java, and Python. This will be helpful for you if you are preparing for placements, hackathons, interviews, or practice purposes. The solutions provided here are very easy to follow and include detailed explanations.

Table of Contents

  1. Problem Statement
  2. Complexity Analysis
  3. Reverse Prefix of Word solution in C++
  4. Reverse Prefix of Word solution in Java
  5. Reverse Prefix of Word solution in Python
  6. Additional Resources
2000. Reverse Prefix of Word LeetCode Solution image

Problem Statement of Reverse Prefix of Word

Given a 0-indexed string word and a character ch, reverse the segment of word that starts at index 0 and ends at the index of the first occurrence of ch (inclusive). If the character ch does not exist in word, do nothing.

For example, if word = “abcdefd” and ch = “d”, then you should reverse the segment that starts at 0 and ends at 3 (inclusive). The resulting string will be “dcbaefd”.

Return the resulting string.

Example 1:

Input: word = “abcdefd”, ch = “d”
Output: “dcbaefd”
Explanation: The first occurrence of “d” is at index 3.
Reverse the part of word from 0 to 3 (inclusive), the resulting string is “dcbaefd”.

Example 2:

Input: word = “xyxzxe”, ch = “z”
Output: “zxyxxe”
Explanation: The first and only occurrence of “z” is at index 3.
Reverse the part of word from 0 to 3 (inclusive), the resulting string is “zxyxxe”.

Example 3:

Input: word = “abcd”, ch = “z”
Output: “abcd”
Explanation: “z” does not exist in word.
You should not do any reverse operation, the resulting string is “abcd”.

See also  2975. Maximum Square Area by Removing Fences From a Field LeetCode Solution

Constraints:

1 <= word.length <= 250
word consists of lowercase English letters.
ch is a lowercase English letter.

Complexity Analysis

  • Time Complexity: O(n)
  • Space Complexity: O(n)

2000. Reverse Prefix of Word LeetCode Solution in C++

class Solution {
 public:
  string reversePrefix(string word, char ch) {
    reverse(word.begin(), word.begin() + word.find(ch) + 1);
    return word;
  }
};
/* code provided by PROGIEZ */

2000. Reverse Prefix of Word LeetCode Solution in Java

class Solution {
  public String reversePrefix(String word, char ch) {
    final int i = word.indexOf(ch) + 1;
    return new StringBuilder(word.substring(0, i)) //
        .reverse()                                 //
        .append(word.substring(i))                 //
        .toString();
  }
}
// code provided by PROGIEZ

2000. Reverse Prefix of Word LeetCode Solution in Python

class Solution:
  def reversePrefix(self, word: str, ch: str) -> str:
    i = word.find(ch) + 1
    return word[:i][::-1] + word[i:]
# code by PROGIEZ

Additional Resources

Happy Coding! Keep following PROGIEZ for more updates and solutions.