LeetCode刷題總結(持續更新中。。。)

2021-08-18 23:25:00 字數 1051 閱讀 7092

1、回文字元

返回字串是否回文結構

def

huiwen

(str):

if len(str) == 1:

return

true

elif len(str) == 2:

return str[0]==str [-1]

else:

return str[0]==str [-1] and huiwen(str[1:-1])

2、寶石與石頭

return sum(map(s.count, j))

3、漢明距離

用異或運算

return bin(x ^ y).count(『1』)

注:按位異或運算子:當兩對應的二進位相異時,結果為1

自己的做法:silly~–_–

def

hammingdistance

(self, x, y):

""" :type x: int

:type y: int

:rtype: int

"""sum0 = 0

x_bin = bin(x)[2:]

y_bin = bin(y)[2:]

b_x = 4*(1+len(x_bin)//4) if len(x_bin)%4 != 0

else

4*(len(x_bin)//4)

b_y = 4*(1+len(y_bin)//4) if len(y_bin)%4 != 0

else

4*(len(y_bin)//4)

b = max(b_x, b_y)

x_bin1 = x_bin.zfill(b)[::-1]

y_bin1 = y_bin.zfill(b)[::-1]

for i in range(b):

if x_bin1[i] == y_bin1[i]:

sum0 += 1

return b - sum0

LeetCode刷題總結

123 4567 891011 12 元素交換 swap a 1 a 3 sort排序 sort a.begin a.end 陣列顛倒 reverse a.begin a.end 陣列元素置為0 memset a,0,a.size 陣列取值 a.push back 定義二維陣列 vector vec...

LeetCode刷題總結

123 4567 891011 12 元素交換 swap a 1 a 3 sort排序 sort a.begin a.end 陣列顛倒 reverse a.begin a.end 陣列元素置為0 memset a,0,a.size 陣列取值 a.push back 定義二維陣列 vector vec...

leetcode刷題總結 6 10題

六 zigzag conversion 本題屬於比較簡單的,很容易就能總結出規律。乙個zigzag數以2 numrows 2為乙個迴圈,每乙個豎行的字母下標為乙個cycle,除了第一行和最後一行,中間各行都要加乙個j cycle 2 i i為從零開始的行號,j為每個迴圈裡i cycle n.clas...