前言
Python是国内外广泛使用的计算机程序设计语言,是高等院校相关专业重要的基础语言课程。由于Python语言功能丰富、表达能力强、使用灵活方便、应用面广、目标程序效率高、可移植性好等许多特点,20世纪90年代以来,Python语言迅速在全世界普及推广。目前,Python仍然是全世界最优秀的程序设计语言之一。
本书是为适应当前教育教学改革的创新要求,更好地践行语言类课程,注重实践教学与创新能力培养的需要,组织编写的教材。本书融合了同类教材的优点,采取了创新方式,精选了300个趣味性、实用性强的应用实例,从不同难度、不同算法、不同类型和不同数据结构,将实际算法进行总结,希望对教育教学及工业界起到抛砖引玉的作用。
本书的主要内容和素材来自网络流行的各大互联网公司面试算法、LintCode、Leetcode、九章算法和作者所在学校近几年承担的科研项目成果。作者所指导的研究生,在研究过程中对学习和应用的算法进行了总结,通过人工智能科研项目的实施,同学们完成了整个科研项目,不仅学到了知识,提高了能力,而且为本书提供了第一手素材和相关资料。
本书从总到分、先思考后实践、算法描述与代码实现相结合,适合从事网络开发、机器学习和算法实现的专业技术人员阅读,既可以作为主要的技术参考书、大学信息与通信工程及相关领域的Python算法实现的本科生教材、程序员算法提高使用手册,也可以为人工智能算法分析、算法设计、算法实现提供帮助。
本书的编写得到了教育部电子信息类专业教学指导委员会、信息工程专业国家第一类、第二类特色专业建设项目、教育部CDIO工程教育模式研究与实践项目、教育部本科教学工程项目、信息工程专业北京市特色专业建设、北京市教育教学改革项目、北京邮电大学教育教学改革项目(2019TD01)的大力支持,在此表示感谢!
由于作者经验与水平有限,书中疏漏及不当之处在所难免,衷心地希望各位读者多提宝贵意见及具体的改进建议,以便作者进一步修改和完善。
李永华于北京邮电大学
2019年4月