[問題] 關於if else statement
第一次發文
如果有那裡不妥當請告知
最近在LEETCODE刷提 遇到一題求 list 裡面任意兩數字XOR最大值
題目連結在這邊
https://goo.gl/HPH4Sm
這題最快的解答是
class Solution:
def findMaximumXOR(self, nums):
"""
:type nums: List[int]
:rtype: int
"""
ans = 0
for bit in range(31, -1, -1) :
ans = (ans << 1) + 1
pre = set()
for n in nums :
p = (n >> bit) & ans
if p in pre : #1
break #2
pre.add(ans - p) #3
else : #4
ans -= 1
return ans
我的問題在我標#1-4的地方
我不太明白這邊的if else statement 怎麼運作的(特別是#4)
一開始我以為是當if p not in pre:
就會直接跳到#4
但是好像不太對
請問有人可以跟我說明一下嗎?
非常感謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 174.55.55.170
※ 文章網址: https://www.ptt.cc/bbs/Python/M.1530067068.A.3E3.html
→
06/27 11:20,
7年前
, 1F
06/27 11:20, 1F
推
06/28 01:17,
7年前
, 2F
06/28 01:17, 2F
推
06/28 11:14,
7年前
, 3F
06/28 11:14, 3F
推
06/28 14:10,
7年前
, 4F
06/28 14:10, 4F
→
06/28 14:10,
7年前
, 5F
06/28 14:10, 5F
→
06/28 14:12,
7年前
, 6F
06/28 14:12, 6F
→
06/28 14:13,
7年前
, 7F
06/28 14:13, 7F
→
06/28 14:13,
7年前
, 8F
06/28 14:13, 8F
→
06/28 14:14,
7年前
, 9F
06/28 14:14, 9F
→
06/28 23:16,
7年前
, 10F
06/28 23:16, 10F
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 2 篇):
Python 近期熱門文章
PTT數位生活區 即時熱門文章