Reverse String 字符串反轉

題目: Write a function that takes a string as input and returns the string reversed.

Example:
Given s = “hello”, return “olleh”.

分析: 經典字符串反轉問題,有n種解法,考慮到時間複雜度最低,還是採用兩頭往中間湊的方法實現。
Code:

public class Solution {
    public String reverseString(String s) {
        if("".equals(s)||s.length() == 1)
        {
            return s;
        }

        char[] array = s.toCharArray();  
        int end = s.length() - 1;  
        int halfLength = end / 2;  
        for (int i = 0; i <= halfLength; i++) {  
            char temp = array[i];  
            array[i] = array[end-i];  
            array[end-i] = temp;  
        }  

        return new String(array);  
       }
}

其它解法
Google了一下其他的解法,發現大家對這個問題回答的都很嗨。比較好玩的解法有stack法,異或解法。第二篇採用了C#語言實現相關算法,並給出了性能的比較,推薦大家閱讀。
具體請看鏈接:
Java實現字符串反轉的8種或9種方法
趣味算法:字符串反轉的N種方法

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章