本书示例丰富,图文并茂,以简明易懂的方式阐释了算法,旨在帮助程序员在日常项目中更好地利用算法为软件开发助力。前三章介绍算法基础,包括二分查找、大O表示法、两种基本的数据结构以及递归等。余下的篇幅主要介绍应用广泛的算法,具体内容包括:面对具体问题时的解决技巧,比如何时采用分而治之、贪婪算法或动态规划,哈希表的应用,图和树算法,K最近邻算法等。这一版将示例代码更新到了Python 3,并新增了两章专门讨论树,加之诸多修订,使得内容更加完善。
为了帮助有一定编程基础的人群进一步提升自己的Python编程水平及应对编程工作的压力,《算法实例精讲 Python语言实现》全面讲解了9种经典算法理论、65个典型实例的算法设计与分析以及Python语言的代码实现过程。首先从Python数据结构基础入手,然后讲解了各种算法,包括排序算法、动态规划算法、双指针算法、深度优先搜索算法、广度优先搜索算法、贪心算法、递归算法、分治算法、回溯算法等,*后归纳了数据结构中的一些经典问题。这既能帮助初学者理清算法的基本结构,融会贯通地掌握好算法基础知识;又能帮助有一定工作经验的读者巩固基础,进一步提升编程水平;也能帮助求职者为未来面试与工作做好必要的知识储备。 《算法实例精讲 Python语言实现》理论基础与实例应用相结合,实例分析与图解相结合,每个实例均设有详细的思路解析和代码实现,
《深入浅出算法竞赛(图解版)》是为帮助读者理解基本的算法思想和编写高效的解决问题的程序而编写的。全书共6章,第1章概述了算法与算法竞赛的知识;第2章介绍了计算机程序解决问题的基本方法 穷举算法与贪心算法;第3章讲解了随机算法,如何利用概率与期望优化算法的效率;第4章讲解了AI的思维模式 搜索算法,如何用更灵活的方式遍历每一种可行解;第5章讲解了动态规划,如何通过状态间的转移,巧妙地规划解;第6章讲解了将大事化小、小事化了的分治算法,如何将问题拆分为易于解决的小问题。 本书配备了大量的算法竞赛试题,使用算法竞赛常用的C 语言编写。同时,本书不拘泥于算法竞赛,在第2 ~ 6章的后每一节给出一段阅读材料,介绍算法有趣的应用,帮助读者拓宽思维。 本书的讲解避开了繁琐枯燥的理论,采用浅显易懂的语言和大量生动
自动驾驶汽车、自然语言识别、内容推荐引擎的实现都离不开人工智能和机器学习算法。机器学习算法只有在解决具体问题时才能体现价值。本书以解决各种趣味问题为目标,教读者用Python、JavaScript、C 编写机器学习算法,内容深入浅出,兼具实用性与大局观。读者将学习编写遗传算法、启发式算法、爬山算法、模拟退火算法,运用蒙特 卡洛模拟、点格自动机、适应函数解决问题。本书尤其适合对人工智能和机器学习感兴趣的程序员进阶学习。
本书既清晰、简洁地介绍了标准数值分析教材所涵盖的内容,也介绍了非传统的内容,比如数学建模、蒙特卡罗方法、马尔可夫链和分形。书中选取的例子颇具趣味性和启发性,涉及现代应用领域(如信息检索和动画)以及来自物理和工程的传统主题。习题用MATLAB求解,使计算结果更容易理解。各章都简短介绍了数值方法的历史。而且还有网上资料。
本书是一本面向问题求解的计算机算法普及读物。笔者挑选了24个问题,有些属于计算机科学中的经典,有些则来自游戏等其他领域的场景,旨在提供一个不同于普通算法教科书的视野。在相关求解算法的介绍上大体遵循问题导入、算法思路、算法描述和算法分析的思路,从而使得对每一个问题和算法的讨论相对独立。全书可以任意顺序选读。 本书适合受过高中及其以上教育的读者,适合作为中学信息技术课程改革和大学计算机基础课的教学参考书,也有助于曾经学过计算机相关课程的读者加深关于算法的认识。
本书通过主人公小灰的心路历程,用漫画的形式讲述了算法和数据结构的基础知识,复杂多变的算法面试题目及算法的实际应用场景。首先介绍了算法和数据结构的总体概念,告诉大家算法是什么,数据结构又是什么,都有哪些用途,如何分析时间复杂度,如何分析空间复杂度。第二章 介绍了最基本的数据结构,包括数组、链表、栈、队列、哈希表的概念和读写操作。第三章 介绍了树和二叉树的概念、二叉树的各种遍历方式、二叉树的特殊形式二叉堆和优先队列的应用。第四章 介绍了几种典型的排序算法,包括冒泡排序、快速排序、堆排序、计数排序、桶排序。第五章 介绍了十余种职场上流行的算法面试题目及详细的解题思路。例如怎样判断链表有环、怎样计算大整数加法等。第六章 介绍了算法在职场上的一些应用,例如使用LRU算法来淘汰冷数据,使用Bitmap算
物联网、人工智能、大数据解析和机器人工学等,日新月异的科学技术每天都在给人类的生活带来重要的变化。身处这样的一个时代,我们面临一个选择,即怎样面对日新月异的科学技术的发展。在这样的变化中,是作为被动的一方,还是成为主动的一方,抑或是站在时代的前端成为创造的一方?这将取决于我们的选择。只要我们不想成为被动的一方,掌握编程的基本技能就是必不可少的。 本书从讲解学习编程的益处出发,向读者介绍了*好的学习编程的方法。紧接着,介绍了主要编程工具的概要和特点,包括 编程一小时 点灯机器人 Scratch 编码猴 等编程工具。了解这些编程工具后,书中又教读者使用 Scratch 从头到尾制作了一个游戏,从而提高他们的编程技能。*后,作者分析了各编程语言的特点,并为读者学习编程提供了真正有益的指导。本书讲解由浅入深,
计算机技术和互联网技术的迅速发展,使得网络上的网站、网页等各种信息以爆炸性的趋势增长,随之而来的还有大量的冗余信息和垃圾信息,并由此带来了信息泛滥、信息迷航以及信息疾病等一系列问题。这些冗余信息、垃圾信息不但影响着用户对Internet的使用效率和质量,同样影响着网络的健康发展。因此,基于此而产生的网络信息过滤技术相关研究具有巨大的社会效益和经济效益。 网络信息过滤,就是根据用户的信息需求,利用一定的工具从大规模的动态信息流中自动筛选出满足用户需求的信息,同时屏蔽掉无用的信息的过程。广义的信息过滤包括对文本、音频、图像、视频等多种信息存在形式的过滤处理,狭义的信息过滤是特指对文本信息的过滤处理。本书相关研究就是针对文本信息过滤特别是中文文本信息过滤中存在的问题而提出的。 本书面向从事自
本书主要介绍并行计算相关的算法的设计和并行计算的性能优化技巧,涵盖现代处理器的特性、衡量程序性能的方法、串行代码性能优化、并行编程模型及其环境、并行算法设计、遗留代码的并行处理、并行编程模型、混合并行等核心技法与实践技巧。
本书基于Python语言介绍了数据结构与算法的基本知识,主要内容包括抽象数据类型和Python面向对象程序设计、线性表、字符串、栈和队列、二叉树和树、集合、排序以及算法的基本知识。本书延续问题求解的思路,从解决问题的目标来组织教学内容,注重理论与实践的并用。
本书是一本讲解前端程序员面试笔试真题的书籍,在写法上,除了讲解如何解答算法问题以外,还引入了示例辅以说明,让读者能够更容易理解。 本书将程序员面试笔试过程中各类算法类真题一网打尽,在题目的广度上,通过各种渠道,搜集了近3年来典型IT企业面试笔试算法高频题目,所选择题目均为企业招聘使用题目。在题目的深度上,本书由浅入深,详细分析每一个题目,并提炼归纳。同时,引入例子与源代码、时间复杂度与空间复杂度的分析,而这些内容是其他同类书籍所没有的。本书根据真题所属知识点进行分门别类,结构合理、条理清晰,对于读者进行学习与检索意义重大。 本书是一本计算机相关专业毕业生面试笔试的求职用书,也可以作为本科生、研究生学习数据结构与算法的辅导书籍,同时也适合期望在计算机软硬件行业大显身手的计算机爱好者
深度学习是目前学术界和工业界都非常火热的话题,在许多行业有着成功应用。本书由Hulu的近30位算法研究员和算法工程师共同编写完成,专门针对深度学习领域,是《百面机器学习:算法工程师带你去面试》的延伸。全书内容大致分为两个部分,第一部分介绍经典的深度学习算法和模型,包括卷积神经网络、循环神经网络、图神经网络、生成模型、生成式对抗网络、强化学习、元学习、自动化机器学习等;第二部分介绍深度学习在一些领域的应用,包括计算机视觉、自然语言处理、推荐系统、计算广告、视频处理、计算机听觉、自动驾驶等。本书仍然采用知识点问答的形式来组织内容,每个问题都给出了难度级和相关知识点,以督促读者进行自我检查和主动思考。书中每个章节精心筛选了对应领域的不同方面、不同层次上的问题,相互搭配,展示深度学习的“百
这是一本讲解程序员面试算法的书。在写法上,除了讲解如何解答算法问题外,还引入了例子辅以说明,让读者能更容易理解。 本书将程序员面试笔试过程中各类算法类真题一网打尽。在题目的广度上,通过各种渠道,搜集了近3年来多家IT企业面试算法高频题目;在题目的深度上,本书由浅入深、庖丁解牛式地分析每一个题目,并提炼归纳,同时,引入例子与源代码、时间复杂度与空间复杂度的分析。本书根据真题所属知识点分门别类,结构合理,条理清晰,对于读者进行学习与查阅意义重大。 本书是针对计算机相关专业毕业生面试笔试的求职用书,也可以作为本科生、研究生学习数据结构与算法的辅导书,同时也适合期望在计算机行业大显身手的计算机爱好者阅读。
本书主要介绍了一种新型的元启发式全局优化算法 类电磁机制(EM)算法。首先针对EM算法的一些不足,对其进行了改进,提出了多种改进EM算法,这些算法为后续的研究提供了指导;然后以改进的算法为基础,分别提出了求解带约束优化问题、多目标优化问题、神经网络训练问题以及模式分类问题的EM算法;并提出了采用离散排列编码方式的离散化EM算法,用来求解流水车间调度问题和装配序列规划问题;zui后介绍了基于EM算法的函数优化软件。附录中给出了本书中使用的标准测试问题的详细介绍。本书可作为计算机、自动控制、人工智能、管理科学和工业工程等专业高年级本科生和研究生的学习参考书,也可供从事计算智能、生产调度等工作的研究人员和工程技术人员参考使用。
《算法笔记》内容包括:C/C++快速入门、入门模拟、算法初步、数学问题、C++标准模板库(STL)、数据结构专题(二章)、搜索专题、图算法专题、动态规划专题、字符串专题、专题扩展。《算法笔记》印有二维码,用来实时更新、补充内容及发布勘误的。《算法笔记》可作为计算机专业研究生入学考试复试上机、各类算法等级考试(如PAT、CSP等)的辅导书,也可作为“数据结构”科目的考研教材及辅导书内容的补充。《算法笔记》还是学习C语言、数据结构与算法的入门辅导书,非常适合零基础的学习者对经典算法进行学习。
蝙蝠优化算法是一种新颖的模拟蝙蝠行为的群智能优化算法,因该算法有模型简单、参数少、通用性强等优点,故被广泛应用于解决实际问题。本书分为8章,第1~2章介绍蝙蝠优化算法的基本框架、研究进展,并讨论了蝙蝠算法的全局收敛性问题;第3~6章从蝙蝠算法的全局搜索方式、局部搜索方式、全局/局部搜索的平衡策略、全局/局部搜索的集成策略等方面介绍作者的工作;第7~8章围绕软件缺陷预测问题,分别构造多目标软件缺陷预测模型和高维多目标软件缺陷预测模型,并有针对性地设计相应的多目标蝙蝠优化算法和高维多目标蝙蝠优化算法来对模型进行求解,从而为解决相关问题提供参考。本书适合从事智能计算研究与应用的科技工作者和工程技术人员阅读使用,也可以作为高等院校计算机科学与技术、控制科学与工程等学科高年级本科生及研究生的教学
本书以MATLAB R2020a为平台,以人工智能算法为背景,全面地介绍了如何利用MATLAB各种智能算法求解相关领域中的实际问题。书中内容做到了理论与实践相结合,让读者可以快速、便捷地学习各种智能算法,并利用智能算法解决问题,做到学以致用、举一反三。全书共分12章,第1章为MATLAB基础篇;第2~12章为智能算法篇,分别介绍了各种人工智能算法,包括智能算法的基本概念、差分进化算法、种群算法、遗传算法、蚁群算法、粒子群算法、免疫算法、模拟退火算法、支持向量机算法、神经网络算法、模糊逻辑控制算法。