題目鏈接
難度:簡(jiǎn)單 ??????類型: 數(shù)組
編寫一個(gè)函數(shù),其作用是將輸入的字符串反轉(zhuǎn)過來瞎抛。輸入字符串以字符數(shù)組 char[] 的形式給出。
不要給另外的數(shù)組分配額外的空間却紧,你必須原地修改輸入數(shù)組桐臊、使用 O(1) 的額外空間解決這一問題。
你可以假設(shè)數(shù)組中的所有字符都是 ASCII 碼表中的可打印字符晓殊。
示例1
輸入:["h","e","l","l","o"]
輸出:["o","l","l","e","h"]
示例2
輸入:["H","a","n","n","a","h"]
輸出:["h","a","n","n","a","H"]
解題思路
雙指針断凶,start指向頭,end指向尾巫俺,兩個(gè)指針指向的元素交換认烁,之后start加1,end減1识藤,繼續(xù)交換
代碼實(shí)現(xiàn)
class Solution(object):
def reverseString(self, s):
"""
:type s: List[str]
:rtype: None Do not return anything, modify s in-place instead.
"""
start = 0
end = len(s)-1
while start<end:
s[start], s[end] = s[end], s[start]
start += 1
end -= 1