程序员与数学--初阅《程序员的数学》

by kevin 25. 十二月 2012 08:13 >

程序员的数学    做为一个程序员,很多时候,碰到问题时,都会后悔自己当初没把数学学好转动眼睛,也经常在思考程序员需要了解多少的数学知识才算是足够的。结城浩写的《程序员的数学》,就是为了回答这个问题的。书中提到:如果数学不好,是否可以成为一名程序员呢?答案是肯定的。编程的基础是计算机科学,而计算机科学的基础是数学。因此,学习数学有助于巩固编程的基础,写出更健壮的程序。 这个观点,我也是比较赞同的。所以也就耐着性子把这本书看了一遍。

      这本书,有点像一般的计算机专业本科数学相关教程的复习笔记,比课本要好的一点,是结合了很多实际的例子。所以看看吧,就当复习。眨眼,立此存照。

 

0的特殊意义

标准化,统一规则。比如:100=1。

占位,表示,没有或者不存在的东西。比如:今天不用上课,表示成今天的上0节课。

周期性问题以及分组

实际开发过程中,很多时候会碰到周期性的问题,这个需要我们自己去猜想问题的周期是什么?

比如:今天是星期天,10100的天之后是星期几?

100 –> 星期一

101 –> 星期三

102 –> 星期二

103 –> 星期六

104 –> 星期四

105 –> 星期五

106 –> 星期一

107 –> 星期三

108 –> 星期二

109 –> 星期六

1010 –> 星期四

1011 –> 星期一

1012 –> 星期三

好不容易可以看出,周期是6。100 ÷ 6 = 16 余 4,所以10100的天之后是星期四。

 

排列组合,递归,数学归纳法

经常碰到吧,是不是已经忘光了,改天看书吧。愤怒 很好用哦,努力掌握吧。

最后,回答一个高深的问题,数字在程序开发中起什么作用?

1.思维训练,让程序员具备认识问题,抽象问题的思想。

2.数学建模,让程序员具备解决问题的能力。

所以才说,程序员可以不懂数学,但懂数学对你写程序有非常大的作用。

其他相关的文章:

Google首席Java架构师谈数学与程序员的关系

http://developer.51cto.com/art/201012/238798.htm

浅谈程序员的数学修养

http://www.builder.com.cn/2008/0303/751666.shtml

分享到: 更多