xiaobaoqiu Blog

Think More, Code Less

读 程序员的数学

书名:程序员的数学
作者:结城浩(hiroshi yuki),生于1963年,日本资深技术作家和程序员。在编程语言、设计模式、数学、加密技术等领域,编写了很多深受欢迎的入门书。代表作有《数学女孩》系列、《程序员的数学》等。
网站:http://www.hyuki.com/

数学可以说是计算机的基础,更确切的说应该是算法或者算法分析的基础。这本书不是什么深奥的数论分析,只是将数学和我们熟知的一些计算机问题联系起来,目的应该是建立一种编程中的“数学思维”。
第一章讲0在计算机领域的作用,包括进制作用、占位作用等;启发:一般性问题往往更好解决,多尝试将遇到的实际复杂问题转化为一般性问题,专想到一个业名称:归约;
第二章讲逻辑,即true与false,包括一系列的逻辑运算,德·摩根定律等;
第三章讲余数的作用,包括周期性和hash分组,包括七桥问题的求解;启发:对于一个很大很难的问题求解,先尝试求解近似的简单问题,找到规律;
第四章讲解数学归纳法,引出了一个算法分析中的循环不变式;
第五章将排列组合,加法法则乘法法则,排列计算组合计算;
第六章将递归,经典的汉诺塔、阶乘、斐波那契、帕斯卡三角(即杨辉三角);
第七章将指数爆炸,指数爆炸引出二分查找,对数及加密的原理;
第八章将不可解问题,主要是反证法,后面的不可数没看明白;

总结:解决问题的办法
(1).找到一致性的简单规则,便于更多问题的统计处理;计算机的术语就是抽象化;
(2).求解问题由易到难,分解问题,哪些是自己能做的,尝试将问题解耦;
(3).对复杂问题,先观察内部是否含有相同结构的子问题,尝试找到递归结构;
(4).任何问题都有利用价值,多尝试逆向思维,想想如何把不好的事情转化为好的事情;

Octopress搭建Github博客

Octopress是利用Jekyll博客引擎开发的一个博客系统,生成的静态页面能够很好的在github page上展现。号称是hacker专属的一个博客系统(A blogging framework for hackers).

搭建github博客:http://beyondvincent.com/blog/2013/08/03/108-creating-a-github-blog-using-octopress/

主題及第三方插件:http://baham.co/01_10_octopressbo-ke-chang-yong-zi-yuan-hui-zong-bao-gua-cha-jian-,-zhu-ti-,-wen-dang-deng.html