日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【scarletthln 关于算法的一点总结】

發(fā)布時(shí)間:2025/3/15 编程问答 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【scarletthln 关于算法的一点总结】 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

1. 分解問題的角度: fix 某一維度,嘗試另一維度上的所有可能
? ?a. 可能是array的(i, j)pointers, b. 可能是矩形的長與寬, c. 可能是tree的每一個(gè)subtree, d. 可能是情景題的每一對pair...
2. 求所有解的, 暴力上backtracking吧
3. 如果問最短/最少的, 先想BFS、DP這對好基友:忘了bfs了
4. 如果環(huán)相關(guān)/重復(fù)訪問, DFS + visited state雄起:忘了visited了
5. 如果問連通性, 靜態(tài)靠DFS/BFS, 動態(tài)靠Union-Find:忘了動態(tài)了
6. 如果有依賴性, 想想Topologic order 和indegree
7. DAG的萬能套路 DFS+memo, 再到DP
8. 建圖的時(shí)候想想vertex, edges/neighbors, cost分別是什么。如果出現(xiàn)cycle, 別忘了給vertex增加狀態(tài)
9. 樹相關(guān), 永遠(yuǎn)有backtracking 和 pure recursion兩條路:啥是pure recursion啊?
10. 遇到字符串/字典/char board相關(guān)的, Trie tree總是可以試試的:用得少別怪我
11. Range里求最大/最小/sum等特征值, Segment tree會是不錯(cuò)的選擇:用得少別怪我
12. Matrix和Array通常都是1. Two Pointers, 2. Sliding Window(fixed & not fixed), 3. DP
13. DP題型往往是: a. 問你可不可以啊, 數(shù)量有多少啊, b. 兩個(gè)string上match來match去的, c. 1D/2D array 相關(guān), d. 博弈游戲
14. 破解DAG cycle想想哪個(gè)維度是具有單調(diào)性的: 常見的steps, directions, paths
15. Reversed idea非常重要, 可能會幫助你破題: 最長可能是某種最短的反面, 最多可能是某種最少的反面, obstacle的反面是reachable, subarray的反面是array中的剩下元素, left的反面是right。:用得少別怪我
16. Look up別忘了HashMap/HashSet, HashMap + DLL是常見hybrid數(shù)據(jù)結(jié)構(gòu)。:用得少別怪我
17. 找規(guī)律試試那些旁門左道: 單調(diào)Stack/雙端Deque::用得少別怪我
18. 排序大法總是可以試試的::用得少別怪我
19. 時(shí)空復(fù)雜度: a. backtracking相關(guān), 想想branching factor和height
? ?? ?? ?? ?? ?? ?? ?? ? b. DFS+memo/DP相關(guān), 想想state數(shù)量, 以及每個(gè)state的cost
? ?? ?? ?? ?? ?? ?? ?? ? c. tree相關(guān), 總是要考慮balanced 和 single linked list的?
? ?? ?? ?? ?? ?? ?? ?? ? d. array/矩陣相關(guān), 先數(shù)數(shù)你有多少個(gè)for loops?
? ? ? ?? ?? ?? ?? ?? ?? ?e. binary search application相關(guān), 別忘了check function開銷
? ? ? ?? ?? ?? ?? ?? ?? ?f. stack/queue/deque相關(guān), 常說的吃進(jìn)去一次又吐出來一次
? ? ? ?? ?? ?? ?? ?? ?? ?g. Java的string是朵奇葩, string concatenation不是免費(fèi)的
? ?? ?? ?? ?? ?? ?? ?? ? h. 沒人知道n是什么, 先告訴別人m,n,k,V,E是什么
20. 比較不同sol的trade offs: a. Time/Space complexity異同:頭一次聽說
? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?b. online/offline算法
? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?c. pre-computation cost
? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?d. 不同APIs的call frequency差異會導(dǎo)致不同的時(shí)間要求
? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?e. extension: 是否適用于generic parameters/stream input
? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?f. 線程安全/large scale

轉(zhuǎn)載于:https://www.cnblogs.com/immiao0319/p/9462021.html

總結(jié)

以上是生活随笔為你收集整理的【scarletthln 关于算法的一点总结】的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。