算法精粹:经典计算机科学问题的Python实现
上QQ阅读APP看书,第一时间看更新

本书没有包含产生图形输出或用到图形用户界面(GUI)的示例。因为本书的目标是用尽可能简洁、可读性良好的方案来解决问题。采用图形界面通常会增加负担,或者让阐述技术或算法的解决方案显著增加复杂度。

不仅如此,由于没有用到任何GUI框架,本书所有代码的可移植性都非常好。无论是在Linux的Python内嵌发行版上,还是在运行Windows的桌面端,这些代码都可以轻松运行。而且本书特意没有采用任何外部库,而是决定只采用Python标准库中的程序包,大多数高级Python教程也是如此。因为本书的目标是遵照第一性原理讲授问题解决技术,而不是讲解“用pip安装某个解决方案”。只有从头开始解决每个问题,才有可能理解那些广受欢迎的库背后的工作原理。至少,只采用标准库能让本书代码具有更好的可移植性,也更容易运行。

当然图形化解决方案有时会比基于文本的解决方案更能说明算法。只是本书的重点不在于此罢了。它会多一层不必要的复杂性。