程序設計
-
函數式編程
當我們說起函數式編程來說,我們會看到如下函數式編程的長相: 函數式編程的三大特性: immutable data 不可變數據:像Clojure一樣,默認上變量是不可變的,如果你要改變變量,你需要把變量copy出去修改。這樣一來,可以讓你的程序少很多Bug。因為,程序中的狀態不好維護,在并發的時候更不好維護。(你可以試想一下如果你的程序有個復雜的狀態,當以后別…
-
二叉樹迭代器算法
二叉樹(Binary Tree)的前序、中序和后續遍歷是算法和數據結構中的基本問題,基于遞歸的二叉樹遍歷算法更是遞歸的經典應用。 假設二叉樹結點定義如下: // C++ struct Node { int value; No…
-
編程命名中的7+1個提示
前幾天Neo寫過《編程中的命名設計那點事》,這里也有另外一篇和程序命名的文章,可以從另一個角度看看。 1.- 變量應該是盡可能的望文知意。千萬不要使用教材中的命名方式。 好的變量: daysDateRange, flightNumber, carColor. 壞的變量: days, dRange, temp, data, aux… 在我們…