Java实现字符串反转【Leetcode】

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

class Solution {
    public void reverseString(char[] s) {
        for (int i = 0;i < s.length;i++) {
            int k = s.length - i - 1;
            if (k < s.length / 2) break;
            char ch = s[i];
            s[i] = s[k];
            s[k] = ch;
        }
    }
}

public class ReverseString {
    public static void main(String[] args) {
        String str = "hello";
//        StringBuilder sb = new StringBuilder(str);
//        String re = sb.reverse().toString(); /// StringBuilder有reverse方法
        char[] s = str.toCharArray();
//        String tp  = String.valueOf(t);
        Solution solution = new Solution();
        solution.reverseString(s);
    }
}
posted @ 2019-03-05 21:21  LeonWen  阅读(449)  评论(0编辑  收藏  举报