本书由江苏省信息学奥林匹克竞赛委员会组织富有算法竞赛教学经验的省内知名一线教师编写。以程序设计中的常用算法与数据结构为主要内容,来训练计算思维,提升用算法和数据结构来解决实际问题的能力。力求用浅显易懂的语言来描述数据结构中的哈希表、树、图的概念及其存储。通过经典的问题分析,来渗透动态规划的状态表示及其常用的优化策略。结合算法和数据结构,系统的介绍树和图的基本算法及其初等数论和组合数学相关知识。 本书可以作为中小学生程序设计的拓展教材,也可供大学生及算法爱好者参考。
自动驾驶汽车、自然语言识别、内容推荐引擎的实现都离不开人工智能和机器学习算法。机器学习算法只有在解决具体问题时才能体现价值。本书以解决各种趣味问题为目标,教读者用Python、JavaScript、C 编写机器学习算法,内容深入浅出,兼具实用性与大局观。读者将学习编写遗传算法、启发式算法、爬山算法、模拟退火算法,运用蒙特 卡洛模拟、点格自动机、适应函数解决问题。本书尤其适合对人工智能和机器学习感兴趣的程序员进阶学习。
本书编者倡导 自主编程 ,以问题解决为主线,致力于提升读者的计算思维与编程技能,引导读者科学地学习算法。全书共分为四章:第一章重点阐述数据抽象的方法及如何选择合适的数据结构,并介绍线性数据结构的基本应用;第二章通过生动的例子,详述了模拟、解析和贪心这三种策略,展示了如何结合严密的算法逻辑与实际操作经验来解决问题;第三章则以深入浅出的方式,讲解了 大化小 的思维方式,介绍了如何利用递推、分治和动态规划等算法来简化和解决复杂问题;第四章全面剖析了好算法的标准,并详细介绍了优化算法时间复杂度和空间复杂度的常用技巧。 本书可以作为数据结构和算法入门的培训教材,也可以作为准备参加全国信息学奥林匹克竞赛的学生赛前集训用书,还可以作为有一定编程语言基础的算法爱好者的参考书籍。
本书基于Python语言介绍了数据结构与算法的基本知识,主要内容包括抽象数据类型和Python面向对象程序设计、线性表、字符串、栈和队列、二叉树和树、集合、排序以及算法的基本知识。本书延续问题求解的思路,从解决问题的目标来组织教学内容,注重理论与实践的并用。
当今社会,项目管理已成为组织与个人的推荐管理技能。项目管理的核心是对项目任务的有效调度安排,涉及运筹学在项目实践中的合理应用。本书详细梳理了项目调度问题中的各类要素,系统构建了单一项目与并行多项目的各