作者involution ( )
看板Marginalman
標題Re: [閒聊] 每日leetcode
時間Thu Aug 8 08:52:01 2024
885. Spiral Matrix III
無聊的模擬題 只是想分享一下繞圈圈的四個方向有幾種寫法
1.
direction = [[0, 1], [1, 0], [0, -1], [-1, 0]]
非常標準的寫法,分別寫出四個方向的xy移動量
2.
dx = [0, 1, 0, -1]
dy = [1, 0, -1, 0]
跟上面就是 AoS/SoA 的差別,也很常見
3.
direction = [0, 1, 0, -1, 0]
觀察之後會發現 [direction[i:i+2] for i in range(4)]
剛好就和第一種寫法是一樣的結果
是一個有趣但如果有其他人要看你code就不適合的寫法
4.
dx, dy = dy, -dx
我覺得也是巧合,不過硬要解釋說這就是順時針旋轉也解釋的通(外積之類的)
反正如果需要跟人解釋的話我不會這麼寫
:)
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 203.77.61.242 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1723078331.A.619.html
推 sixB: 怎麼來了個真內卷了 您又是哪位大神哇哇哇 08/08 08:56
→ sixB: 昨天還有打cf 我跪了 08/08 08:59
推 sustainer123: 大師 08/08 08:59
推 DJYOMIYAHINA: 大師兄您來了 08/08 09:12
→ Rushia: 別卷了 08/08 09:15
→ dont: 大師 08/08 13:43