算法应该怎么“玩”

市面上关于算法的书可谓琳琅满目,有经典但难啃的、也有简单入门的、更有独辟蹊径的,不过这些大多数都是偏理论的多、偏应用的少,很多读者啃完后,对各种排序、搜索、遍历等常用算法了如指掌,但是遇到实际问题时还是束手无策,这其实就是经验和方法集的问题了。算法应该怎么“玩”呢?其实就是希望大家能做到以下三点:

  • 对于遇到特殊问题时要能够自己设计出算法实现;
  • 对于原理公开的知名算法,要能将算法原理翻译成具体的算法代码;
  • 对已有具体实现的算法,要能够设计合适的数学模型,并将算法应用到实际问题中。

若要做到这些,除了熟练掌握各种常用的基础算法外,还需要了解算法设计的常用思想和模式,同时要掌握将题目转换成数据模型并进一步用数据结构来实现数据模型的一般方法,也就是我们常说的建模。重点是如何设计算法实现以及如何将理论上的算法应用到实际工作中并解决具体的问题。

授人以鱼不如授人以渔,作者在对每个算法的分析、分解和实现的过程中,同时也会分享设计算法的方法和一些常用的技巧。

我已加入,你还在等什么呢?快加入和我一起来学习吧~
算法应该怎么“玩”

作者介绍

王晓华,毕业于华中科技大学,目前就职于中兴通讯,任职开发经理和资深软件工程师,主要工作是嵌入式通讯软件开发。精通 C 和 C++ 开发语言,熟悉的领域和技术还包括:算法设计、面向对象的软件设计和重构、测试驱动开发、敏捷与过程改进、Windows 内核文件系统、汇编语言、软件破解与保护、网络安全。主要的作品有《算法的乐趣》和译作《雷神的微软平台安全宝典》。


文末福利:“程序员私房菜”,一个有温度的公众号~
程序员私房菜