[Git 原理] Git 物件儲存格式

Git 有四種物件,分別是 Blob (binary large object) 物件、Tree 物件、Commit 物件以及 Tag 物件。本文會介紹這四種物件的檔案儲存格式。…

[LeetCode 解題筆記] Number of Provinces

有 n 個城市,有些城市相連、有些城市沒有。如果城市 a 直接與城市 b 相連,且城市 b 直接與城市 c 相連,則城市 a 間接與城市 c 相連。一個省(province)為一組直接或間接相連的城市。題目給定一個 n x n matrix isConnected...…

[LeetCode 解題筆記] Last Stone Weight

給你一堆石頭,每顆石頭都有正整數重量(weight)。每一輪都要挑兩顆最重的石頭把它們粉碎。假設這兩顆石頭分別具有重量 x 跟 y 且 x <= y。如果 x == y ,兩顆石頭都會被粉碎。如果 x != y ,重量 x 的石頭會被粉碎,重量 y 的石頭則會有新的重量 y - x 。…

[LeetCode 解題筆記] Binary Tree Tilt

給定一棵 Binary Tree 的 root ,return 每個 node 的 tilt 加總值。 一個 tree node 的 tilt 的定義為:「所有左子樹的 node 的 value 加總」跟「所有右子樹的 node 的 value 加總」的 absolute difference。…

[LeetCode 解題筆記] Find Smallest Letter Greater Than Target

給定排序過後的 character array letters ,其中只有英文小寫字母。此外,給定一個目標字母 target ,欲求 array 中大於 target 的最小元素。 另外,letters 也會 wrap around。例如: target = 'z' 且 letters = ['a', 'b'] ,則答案為 'a' 。…