344. 反轉字符串

一. 題目

編寫一個函數,其作用是將輸入的字符串反轉過來。

示例 1:

輸入: "hello"
輸出: "olleh"

示例 2:

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

二.思路及代碼

這個屬於比較簡單的字符串題。

法1:新建一個空字符串,將舊字符串從尾到頭的循環添加進去就可以了,需要注意的是字符串和元組一樣一旦建立就不可修改, 所以只能用 ‘+’ 重新拼接一個新的字符串。

法2:當然在python中有更簡單的操作:slice (切片)。--> [ start: end: interval]。

法3:雙指針一個指向頭,一個指向尾,兩兩交換直到頭指針超過尾指針。(但python實現起來比較麻煩,因爲python的built-in string 不能修改)

1>. 法1

class Solution:
    def reverseString(self, s):
        """
        :type s: str
        :rtype: str
        """
        s_new = str()
        i = 1
        while i <= len(s):
            s_new = s_new + s[-i]
            i += 1
        return s_new

2>. 法2 切片

class Solution:
    def reverseString(self, s):
        """
        :type s: str
        :rtype: str
        """
        return s[::-1]

 

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