寫在前面 247場周賽第三題,沒想到使用前綴和,看到大佬們十幾行就做完了真的佩服。本文主要講解思路,并配以完整代碼供參考。 題目 最近力扣題目翻...
寫在前面 這周周賽的最后一題,經典遞推博弈論,但是沒想出來,通過學習看懂了推理過程,還順便學會了這種通過前綴的方式優化DP,收獲良多。 題目 核...
寫在前面 這次周賽的第四題還是比較有意思的,尤其是時間復雜度方面,給的數據范圍在10^5,需要O(NlogN)的算法,就很容易將思想局限在二分、...
寫在前面 最大公約數的求解還是比較常用的板子之一,根據輾轉相除法的思想遞歸操作,可以在O(logN)(其中N為較小的數)的時間完成求兩個數最大公...
寫在前面 快速冪說白了就是實現一個Math.pow(),雖然Java的庫中有提供計算冪的方法,但是實際使用中很可能會出現溢出的問題或者對答案取模...
寫在前面 拓撲排序常用于判斷有向圖是否有環或者獲取滿足一定先后順序的圖的遍歷結果,其核心思路比較簡單,就是DFS(深度優先遍歷)或者BFS(廣度...
寫在前面 字典樹(TireTree),典型應用是用于統計,排序和保存大量的串(但不僅限于字符串),所以經常被搜索引擎系統用于文本詞頻統計。它的優...
寫在前面 對于最長上升子序列或者其變種問題,使用O(N^2)復雜度的動態規劃(DP)總是比較容易想到的,而本文要提到的板子并不是普通的動態規劃(...
寫在前面 二分查找算是比較常見而且簡單的算法了,在很多需要時間復雜度O(NlogN)的題目中都有使用。本身二分查找并不難寫,這里記錄一個板子主要...