344. Reverse String (Easy)

https://leetcode.com/problems/reverse-string/

Write a function that reverses a string. The input string is given as an array of characters char[].

Do not allocate extra space for another array, you must do this by modifying the input array in-place with O(1) extra memory.

You may assume all the characters consist of printable ascii characters.

 

Example 1:

Input: ["h","e","l","l","o"]
Output: ["o","l","l","e","h"]

Example 2:

Input: ["H","a","n","n","a","h"]
Output: ["h","a","n","n","a","H"]

Solutions

class Solution {
    public void reverseString(char[] s) {
        if (s == null || s.length <= 1) {
            return;
        }

        int lptr = 0;
        int rptr = s.length - 1;
        while (lptr < rptr) {
            swap(s, lptr, rptr);

            lptr++;
            rptr--;
        }
    }

    private void swap(char[] s, int x, int y) {
        char tmp = s[x];
        s[x] = s[y];
        s[y] = tmp;
    }
}

Incorrect Solutions

References

Copyright © iovi.com 2017 all right reserved,powered by GitbookLast Modification: 2019-12-03 11:01:18

results matching ""

    No results matching ""