給定一個含數字的陣列 A [0.. N), 0 ≤ N. 其中任一個連續區段 [p..q) 的「信用」是其中正數的個數減去負數的個數：
我想知道這套概念的創始者們怎麼談它，因此好奇地想讀這本書。
「讓程式能依據其結構被理解、被證明」便是我心目中的「結構化編程」。而在那個時代，他們的挑戰便是設計語言、符號，使得這種編程與推論成為可能。
Niklaus Wirth 回顧電腦歷史上一些當時似乎是好點子，但多年後回顧卻不盡然的發明。
「一對伴隨函子可以生出單子 (monad)」對一些人來說是「民眾知識」等級的。因為最近的一些研究，我得把相關知識整理一下，順便註記於此。
這就是語意與語法、無限與有限的差距。練習處理 regular expression 迫使你去意識到、正視這個問題。這樣的問題在 CS 的許多層面上都重複發生。
只需 O(log n) 個遞迴呼叫的費氏數演算法是怎麼來的？會比「公式解」快嗎？
雲、山、海岸線、閃電等都是自然界可看到的碎型，複雜而不規則。然而這是自然之所以美的原因。如果雲是圓形的，那多無聊。而如果數學不能捕捉自然之美，那是多麼可惜的事情。碎型理論揭去了這層神秘的面紗，告訴我們，這些自然事物的「規則」其實隱藏在另一個維度中。
為什麼這麼慢呢？Bentley 和 McIlroy 認為問題出在我們花了太多工夫把兩個白色元素一步步挪到中間。與其如此，不如先把白色元素放到兩邊去，把陣列排成「白、紅、藍、白」。等排序完成，再把白色換回中間就可以了！
這是一個 O(N-M) 的程式。如果三色數量相同，我們平均需要大約 2(N-M)/3 次交換。如果我們當初選擇從檢查 a[b-1] 開始，平均需要的交換次數則是 N-M 次。