一、對算法的思考:
- 算法爲什麼老和 數據結構 混在一起?
相輔相成、脣齒的關係。好的算法依賴巧妙的數據結構。數據的物理、邏輯結構又限制了算法。 - 算法包含哪些東西?難道就是排序嗎?
搜索、排序、插入、刪除、更新等。 - 數據結構有哪些?
線性數據結構(數組、堆棧、列隊)、樹、圖等
二、算法學習的效果:
1、在最複雜的邏輯思維、純抽象思維中來鍛鍊鍛鍊邏輯能力。
2、讓人變的細心。鍛煉出縝密的思維邏輯,告別憑感覺、大概、簡單的思維。
效果體現、拓展:
1、邏輯是什麼?
初級階段: 面對一個問題、算法、目的。能清晰的劃分出業務關係、邏輯關係、。且不能忽略各種邊界值。
升級階段: 能用最合適的數據結構。最快、最簡潔、最優秀的算法 ,最高效的編程函數。最周全的邊界值。最好的設計模式模式。
再升級: 能預料到可能遇到的所有情況。
都是抽象的,但卻需要周全、清晰的劃分關係,全憑腦子抽象出完整的閉環 + 經驗來實現。
先製造一個閉環,例如:整數包含正數、負數、零。不能只考慮大於1的數、而忽略1、 0、 負數等。
2、數學是什麼?
越來越覺得,數學就是抽象的現實、問題、思維、幾何、編程等現實的最高級的抽象模型。
就像人體的細胞、物質的分子、生物的基因一樣。萬變不離其宗。