LC#344 : Reverse String
Leet Code Maths

25 minutes


go back go back go back home home

LeetCode Problem #69420 : Nice


Question:

Write a function that reverses a string. The input string is given as an array of characters s. You must do this by modifying the input array in-place with O(1) extra memory.

Example 1:
Input: s = ["h","e","l","l","o"]
Output: ["o","l","l","e","h"]

Example 2:
Input: s = ["H","a","n","n","a","h"]
Output: ["h","a","n","n","a","H"]

Constraints:

1 <= s.length <= 105
s[i] is a printable ascii character.

My Thoughts

There are multiple ways to solve this. using string builder 'reverse()' or 2 pointer.

Initial Solution: (2 - pointer)

    class Solution {
    public void reverseString(char[] s) {
        int start = 0;
        int end = s.length -1;
        while(end > start){
            char temp = s[start];
            s[start] = s[end];
            s[end] = temp;
            start++;
            end--;
        }
    }
}

Peformance:

N/A