/* 自定義代碼塊樣式 */

herrDeng網內搜尋

自訂搜尋

Ads

2023年9月3日 星期日

組合Pascal三角Python C++解Leetcode 62 unique paths


組合Pascal三角Python C++解Leetcode 62 unique paths。把網站的例題轉個45度角,它的計算方式就是Pascal三角,也就是組合數C^N_K  (N=n+m-2, K=m-1),程式要寫得好,還是要多學點數學!
有了遞迴公式,就可用動態規劃dynamic programming,動態規劃就是一種程式設計的技巧

2023年9月1日 星期五

C++bit處理解Leetcode 338 counting Bits


提供三種位元處理方式來數位元,第三個解感謝由網友@Adamm93提供。提供 O(n) 線性時間解決方案。 __builtin_popcount 或 C++ bitset count() 執行時間為 O(log⁡ n) ,其實就是真的去數,因此在快速實作不使用。

2023年8月30日 星期三

2023年8月23日 星期三

鴿籠原理解Leetcode 767. Reorganize String

 


3隻狗4狗洞每隻狗都有一個狗洞,但只有兩個狗洞就不可能。若某個字元 c 的頻率 freq(c) 大於 (n+1)/2,根據鴿籠原理(Pigeonhole principle),找到一個相鄰字元不相同的字串是不可能的,反之則可能。當有 4 個成一排的狗洞,而有 3 隻狗時,不可能存在相鄰的狗洞讓這 3 隻狗分開,5個狗洞就可以。

2023年8月20日 星期日

C++拓樸排序Kahn演算與DFS解Leetcode難題1203 Sort Items by Groups Respecting Depende...

 
 C++拓樸排序Kahn演算與DFS解Leetcode難題1203 Sort Items by Groups Respecting Dependencies
Kahn算法是一種透過刪除邊緣並減少入度的廣度優先搜索方法。
Related Posts Plugin for WordPress, Blogger...

熱門文章