算法分析与设计
提供课件、大纲,咨询QQ:2301891038(仅限教师)。算法设计与分析理论和上机实验相结合,每章后精选了一些基础的算法习题,针对各章节不同的算法设计技术,设计了多个上机实验,并提供多套自测试卷。

作者:李少芳、卓明秀

丛书名:高等学校计算机专业系列教材

定价:49.8元

印次:1-2

ISBN:9787302627999

出版日期:2023.06.01

印刷日期:2024.08.09

图书责编:龙启铭

图书分类:教材

电子书
在线购买
分享
内容简介
作者简介
前言序言
资源下载
查看详情 查看详情 查看详情

本书主要介绍经典的算法设计技术,包括递归与分治策略、动态规划法、贪心算法、回溯法、分支限界法、概率算法等。在算法分析方面,介绍了二分搜索技术、大整数的乘法、Strassen矩阵乘法、棋盘覆盖、合并排序、快速排序、循环赛日程表、矩阵连乘问题、最长公共子序列、凸多边形**三角剖分、多边形游戏、图像压缩、活动安排问题、**装载、哈夫曼编码、最小生成树问题、套利问题、n皇后问题、图的m着色问题、15谜问题、单源最短路径问题、旅行商问题等,并对有的问题进行算法优化设计。书中主要突出对问题本身的分析和求解方法,并进行了问题的计算复杂性分析。本书每章均精选了一些基础的算法习题,针对各章节不同的算法设计技术设计了多个上机实验,并提供多套自测试卷,有助于学生了解自己对学习内容的掌握程度,自测学习效果。 本书可作为大学计算机科学与技术、软件工程等专业本科生的教学用书,也可作为从事实际问题求解的算法设计与分析工作人员的参考书。

李少芳 单位:莆田学院机电与信息工程学院 职务、职称:副教授 性别:女 年龄:491995年入职以来一直从事计算机专业基础课、专业课的一线教学工作,主讲的课程包括《Access数据库与程序设计》、《C语言程序设计》、《C语言程序设计课程设计》、《程序设计基础》、《C/C++工程技能实习》、《Java程序设计》、《Java程序设计与应用》、《Java程序设计课程设计》、《算法设计与分析》、《面向对象程序设计(C++)》、《C++语言》、《VC》、《面向对象可视化程序设计》等。从2001年起从事算法课程的教学,研究方向计算机算法,人工智能应用基础,多Agent系统。已主编出版《面向对象程序设计与MFC编程案例教程》、《面向对象程序设计与MFC编程实验指导》、《C语言程序设计基础教程》和《C语言程序设计习题与实验指导》。目前已在计算机中文核心刊物及大学学报上发表论文20多篇,2011年曾在《计算机研究与发展》上发表论文《一种基于势结构分组思想的任一时间联盟结构生成》。

前言 算法设计与分析是高等学校计算机专业的核心课程。该课程是学习其他专业课的基础,也有利于培养学生的计算思维和求解问题的能力。面对各个应用领域的大量实际问题,最重要的是分析问题的性质并选择正确的求解思路,即找到一个好的算法。特别是在当今复杂、海量信息的大数据处理中,一个好的算法往往起到决定性的作用。 本书针对实际问题需求,分析问题并选择高效求解算法,进行问题的计算复杂性分析,为提高学生的素质和创新能力打下坚实的基础。本书主要介绍算法的基础知识、经典的算法设计技术与分析方法。算法的基础知识部分主要介绍算法相关的基本概念,如什么是算法、算法的表示、算法最坏情况下和平均情况下的时间复杂度、算法时间复杂度函数的主要性质、算法复杂度表示等。经典的算法设计技术与分析方法部分主要介绍递归与分治策略、动态规划法、贪心算法、回溯法、分支限界法、概率算法等算法设计技术,重点介绍这些设计技术的使用条件、分析方法、改进途径,并给出一些重要的应用。在算法分析方面,介绍了二分搜索技术、大整数的乘法、Strassen矩阵乘法、棋盘覆盖、合并排序、快速排序、循环赛日程表、矩阵连乘问题、最长公共子序列、凸多边形最优三角剖分、多边形游戏、图像压缩、活动安排问题、最优装载、哈夫曼编码、最小生成树问题、套利问题、n皇后问题、图的m着色问题、15谜问题、单源最短路径问题、旅行商问题等,并对有的问题进行算法优化设计。 本书是面向高等院校计算机及相关专业的一本算法入门基础教材,主要涉及算法的设计、分析与优化途径。本书中的算法采用C语言或C++语言描述和实现。全书针对算法初学者的特点,在内容安排上力求通俗易...

目录
荐语
查看详情 查看详情
目录

第1章算法概述/1

1.1什么是算法1

1.2算法复杂性2

1.3算法复杂性计量3

1.4算法复杂性的表示4

1.4.1算法复杂性的渐近性态4

1.4.2复杂性渐近阶5

1.4.35个渐近意义下的记号 5

1.4.4常见的算法时间复杂度6

1.5算法复杂性的重要性7

习题18

第2章递归与分治策略 /11

2.1递归的概念11

2.2分治法的基本思想16

2.3二分搜索技术18

2.3.1线性查找18

2.3.2二分搜索法18

2.3.3二分搜索算法复杂性最坏情形分析19

2.3.4二分搜索算法复杂性平均情形分析20

2.4大整数的乘法20

2.4.1大整数乘积的分治算法描述20

2.4.2大整数乘积的时间复杂度递推方程21

2.5Strassen矩阵乘法21

2.5.1Strassen矩阵分治乘法21

2.5.2时间复杂度递推方程22

2.6棋盘覆盖问题22

2.6.1问题描述22

2.6.2算法复杂性分析25

2.7合并排序25

2.7.1基于比较的排序时间复杂度下界25

2.7.2用递归树解递归关系式26

2.7.3合并排序27

2.8快速排序30

〖1〗算法分析与设计目录〖3〗〖3〗2.8.1算法描述30

2.8.2时间复杂度分析32

2.9循环赛日程表安排32

2.9.1问题描述32

2.9.2问题的分治法设计思想33

2.9.3分治算法实现33

习题234

第3章动态规划法/41

3.1动态规划法概述41

3.1.1最优性原理41

3.1.2动态规划法的基本步骤41... 查看详情

可作为大学计算机科学与技术、软件工程等专业本科生的教学用书,本书每章后精选了一些基础的算法习题,针对各章节不同的算法设计技术,设计了多个上机实验,并提供多套自测试卷,有助于学生了解自己对学习内容的掌握程度,自测学习效果。

查看详情