LeetCode 344.反转字符串

题目描述

编写一个函数,其作用是将输入的字符串反转过来。

示例 1:

输入: "hello"
输出: "olleh"

示例 2:

输入: "A man, a plan, a canal: Panama"
输出: "amanaP :lanac a ,nalp a ,nam A"

思路

  1. 使用StringBuider或StringBuffer修改字符序列,关于StringBuilder和Stringbuffer的区别可以参考我的零一篇文章Java中的String、StringBuffer、StringBuilder有什么区别?

  2. 将字符串转化为字符串数组,对换首尾字符位置即可。

    Java AC

    1. 使用StringBuilder
    class Solution {
        public String reverseString(String s) {
            String res = new StringBuilder(s).reverse().toString();
            return res;
        }
    }
    
    1. 转换为数组
    class Solution {
        public String reverseString(String s) {
         char[] arr = s.toCharArray();
         int i = 0, j = arr.length - 1;
         while (i < j) {
             char tmp = arr[i];
             arr[i] = arr[j];
             arr[j] = tmp;
             i++;
             j--;
         }
         String str = String.valueOf(arr);
         return str;
     }
    }
    
    原文作者:逍遥ii
    原文地址: https://www.jianshu.com/p/33c90a013306
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞