LeetCode Summary of Data Structure Algorithms
1. 常見數據結構
線性:
數組:Merge Sorted Array
鏈表:Merge k Sorted Lists,Partition List
隊列,
堆棧,
塊狀數組(數組+鏈表),
hash表,
雙端隊列,
位圖(bitmap)
樹:
二叉樹: Minimum Depth of Binary Tree, Path Sum II, Inorder Travel
堆(大頂堆、小頂堆),
trie樹(字母樹or字典樹),
后綴樹,
后綴樹組,
二叉排序/查找樹,
B+/B-,
AVL樹,
Treap,
紅黑樹,
splay樹,
線段樹,
樹狀數組
圖:圖
其它:并查集
2、常見算法
(1) 基本思想:枚舉,
遞歸: Flatten Binary Tree to Linked List,Generate Parentheses,Letter Combinations of a Phone Number
分治,
模擬&貪心: Gray Code,Insert Interval,Jump Game II, Multiply Strings, Next Permutation, Palindrome Number,Pascal's Triangle II
貪心,動態規劃,剪枝,回溯
二分查找:Median of Two Sorted Arrays,Search in Rotated Sorted Array
(2) 圖算法:深度優先遍歷與廣度優先遍歷, 最短路徑,最小生成樹,拓撲排序
(3) 字符串算法:
字符串查找: Implement strStr,Length Of Last Word,Longest Common Prefix,
Longest Palindromic Substring, Longest Non-Repeating SubString
雙指針: Minimum Window Substring
hash算法,KMP算法
(4) 排序算法:冒泡,插入,選擇,快排,歸并排序,堆排序,
桶排序: First Missing Positive
(5) 動態規劃:Distinct Subsequences,Edit Distance, Interleaving String, Jump Game,Largest Rectangle in Histogram
背包問題,最長公共子序列,最優二分檢索樹
(6) 數論問題:素數問題,整數問題,進制轉換,同余模運算,
進制轉換:Integer To Roman
乘除法:Divide Two Integers
(7) 排列組合:排列和組合算法
(8) 其它:LCA與RMQ問題
(9) 水箱問題:Trapping Rain Water,Container With Most Water,
?
3. 常見設計題
(1)海量數據處理
總結
以上是生活随笔為你收集整理的LeetCode Summary of Data Structure Algorithms的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: |spoj 694|后缀数组|Disti
- 下一篇: 崩坏3九游服务器稳定吗,为什么崩坏三萌新