知其所以然 劉未鵬

2021-07-02 12:14:38 字數 668 閱讀 7927

這是乙個樹狀的知識結構,越往上層走,需要記憶的節點就越少所謂觸類旁通者,其實便是因為他擅長去理解解法背後的更具一般性的東西。所以我還有乙個習慣,就是看到美妙的證明和解法總是會去一遍又一遍的去反覆揣摩,試圖理解想出這個證明的人到底是怎麼想出來的,有沒有什麼一般性的方法可循,很多時候,在這樣揣摩的過程中,你會理解到更深刻的東西,對問題性質更深刻的認識,對解決問題的思路更深刻的認識,這些認識不僅對於你理解當前這個定理或問題有極大的幫助,同時也有助於你解決以後會遇到的表面不同但本質一樣的問題。

簡單地說,如果你對於每個問題都能真正弄清以下這幾個問題的答案,那麼可以肯定的是,你的理解,記憶,以及學習的效率都會得到質的提高:

弄清解空間的是第一步,例如排序演算法,其解空間可以看做是所有可能的下標排列組合,其中有且僅有乙個排列是正確的排序排列(簡單起見假設元素各不相同)。那麼乙個演算法在探索這個解空間方面的行為就決定了它的效率高低,最簡單的,如果乙個演算法每次只能檢查解空間中的乙個點,那麼這個演算法的複雜度就是解空間的大小。對排序演算法而言也就是n!。從這個角度來看,我們就會很容易的發現,所有基於比較的排序演算法,其複雜度為什麼是以o(nlogn)為下界的,因為一次比較操作最多有兩個結果,a>b或a什麼基於比較的排序演算法的複雜度最好不過如此了

。這篇文章看起來還是有點困難的,因為一點兒演算法基礎都沒有。要不要學呢?

知其然知其所以然

深深的話我們淺淺地說,長長的路我們慢慢地走。讓我們始終有勇氣特立獨行。不溫不火,不疾不徐。將記憶自拔於困頓的泥沼,將希望播撒於每一寸光陰!生活縱有千千結,還是要繼續下去,時光就是如此的公平。最近總是陷入乙個又乙個的糾結,乙個又乙個的心塞。生活彷彿陷入了恍若隔世的噩夢中,而自己就是噩夢中的小丑一樣,只...

java結果輸出,知其所以然

輸出結果是什麼?為什麼會出現這種結果?一public class parenttest static public class childrentest extends parenttest static public static void main string args 二 true or f...

《知其所以然》讀書筆記

目前很多技術類書籍的講解方式大部分是羅列一大堆的知識,自上而下的,一步步告訴你怎麼做,至於為什麼要這樣做讀者不知道,實踐的過程中會出現一些問題,為什麼會出現這樣的問題?怎麼解決?讀者也不知道 在學習的過程中,要知其然,更要知其所以然,才能學的好。一 其實思維方法也是一種知識,只不過它是一種能夠幫助我...