《程序员的数学》

日·结城浩
管杰 译
人民邮电出版社
2012年11月 第1版

第2章 逻辑——真与假的二元世界

包含未定义的逻辑

带条件的逻辑与(&&)

运算符&&可以用于下面的逻辑

if ( check() && execute() ) {
  ...
}

这时,若函数check()的值为false,就不执行execute()了。这里的check()起到了检查可否执行execute的作用。(57页)
此处表达式check() && execute()的真值是否在check()为假的情况下可确定,从真值表可以得出。但check()为假时是否继续运算execute(),则取决于所使用语言的逻辑求值过程是否是短路求值(short-circuit evaluation)的。不同语言对短路求值的处理各不相同,对此Wikipedia上对这个特性有很详细的解释。

第3章 余数——周期性和分组

寻找恋人的思考题

思考题(寻找恋人)

在一个小王国中,有8个票子(A~H)。如图所示,各个村之间有道路相连(黑点表示村子,线表示道路)。而你要寻找流浪在这个王国的你唯一的恋人。
你的恋人信在这8个票子的某一个里。她每过1个月便顺着道路去另一个村子,每个月都一定会换村子,然而选择哪个村子是随机的,预测不了。例如,如果恋人这个月住在G村,那么下个月就住在C、F、H中的某个村子。
目前你手头上掌握的确凿信息只有,1年前(12个月前),恋人住在G村。请求出这个月恋人住在A村的概率。
(74页)
对于在概率课上学过随机游走问题的我,看到这个问题第一反应是依次算出每个月住各村子的概率。

第8章 排列结合——解决计数问题的方法

术语:

  • 置换 substitution
  • 排列 permutation
  • 组合 combination
  • 归纳 induction
  • 递归 recursion

递归图形

谢尔平斯基三角形(Sierpinski triangle)

用颜色区分帕斯卡三角形中的奇数(涂黑)和偶数(留白),就出现了谢尔平斯基三角形。(168页)

添加新评论