LeetCode Top Interview Questions 344. Reverse String (Java版; Easy)

welcome to my blog

LeetCode Top Interview Questions 344. Reverse String (Java版; Easy)

题目描述

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"]

第一次做; 核心: 1)双指针: 从两端向中间

class Solution {
    public void reverseString(char[] s) {
        if(s==null || s.length<=1)
            return;
        int left=0, right=s.length-1;
        while(left<right){
            swap(s, left, right);
            //update
            left++;
            right--;
        }
    }
    private void swap(char[] arr, int i, int j){
        char tmp = arr[i];
        arr[i] = arr[j];
        arr[j] = tmp;
    }
}
发布了580 篇原创文章 · 获赞 130 · 访问量 18万+

猜你喜欢

转载自blog.csdn.net/littlehaes/article/details/104551449
今日推荐