一. 題目
編寫乙個函式,其作用是將輸入的字串反轉過來。
示例 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]
344 反轉字串
編寫乙個函式,其作用是將輸入的字串反轉過來。示例 1 輸入 hello 輸出 olleh 示例 2 輸入 a man,a plan,a canal panama 輸出 amanap lanac a nalp a nam a 前後兩個位置的字元交換,這樣就可以減少迴圈的次數!注意的是,字串中替換某個字...
344 反轉字串
編寫乙個函式,其作用是將輸入的字串反轉過來。輸入字串以字元陣列 char 的形式給出。不要給另外的陣列分配額外的空間,你必須原地修改輸入陣列 使用 o 1 的額外空間解決這一問題。你可以假設陣列中的所有字元都是 ascii 碼表中的可列印字元。示例 1 輸入 h e l l o 輸出 o l l e...
344 反轉字串
編寫乙個函式,其作用是將輸入的字串反轉過來。輸入字串以字元陣列 char 的形式給出。不要給另外的陣列分配額外的空間,你必須原地修改輸入陣列 使用 o 1 的額外空間解決這一問題。你可以假設陣列中的所有字元都是 ascii 碼表中的可列印字元。示例 1 輸入 h e l l o 輸出 o l l e...