《编程之美》:怎样才算美?

《编程之美》封面

最近看了博文视点出版的《编程之美——微软技术面试心得》,连续的几个晚上奋战到两点,才放下手中的书,合上书躺在床上,却不能入睡:何谓编程,何谓美,怎样的编程才能算美?

拿到这本书的时候,可能在想这是一本介绍如何编程的书,看了一些后,才会发现书中讲的都是算法问题,但回头再想想,就会明白书的本意并不是讲编程,讲算法,也许你看完这本书,不一定非要每个程序都实现,每个算法都明白,但要知道这本书是在讲思想,讲解决问题的方法。

不管是去哪家公司面试,可能都会有一些刁钻的问题,面试中重要的不是给面试官一个答案,而是告诉他一种思路,一种解决问题的思路。《编程之美》就是告诉大家在遇到问题时如何去寻找思路,如何去优化思路,最终找到解决问题的途径,并且在这条路上不断地追求卓越,这就是编程之美。

总体来看,我总结大概有这几条:

  1. 空间、时间相互置换,达到匹配平衡,多去解决时间或空间复杂度问题。
  2. 分治思想,典型如二分查找,把复杂的问题化简单,把简单的问题化得更简单。
  3. 数学推理,看似繁琐的事情,一定也有规律可循,通过由特殊情况推算出一般情况,获取通项公式,找到解决问题的简单思路。
  4. 递归调用,递归虽然效率低,但能使一些复杂的思想变得易于实现,特别对于对算的过程。
  5. 抽丝剥茧,拿到复杂的问题,一点点儿的去抽象,从问题中抽象出单个简单问题,再把单个简单问题抽象成具体实现。

但实际上,我们在各自所在的领域解决问题的时候,没有那种方法能拿过来就用,可以生搬硬套,只有理解和融汇了各种思路,不断锻炼自己发现问题解决问题的能力,才能以不变应万变。这本书讲的就是这个道理:编程贵在思想,只有思想很美,只有在思想上追求卓越,编程才会美。


作者:付强,原文链接:http://blog.csdn.net/threewall/archive/2009/05/12/4171019.aspx

《编程之美——微软技术面试心得》:豆瓣讨论互动网购买卓越网购买当当网购买

转载于:https://www.cnblogs.com/bvbook/archive/2009/07/01/1514582.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值