分享
 
 
 

C/C++与数据结构(第3版)(下册)(普通高等教育“十一五”国家级规划教材,教育部:微软精品课程建设立项项目)

C/C++与数据结构(第3版)(下册)(普通高等教育“十一五”国家级规划教材,教育部:微软精品课程建设立项项目)  点此进入淘宝搜索页搜索
  特别声明:本站仅为商品信息简介,并不出售商品,您可点击文中链接进入淘宝网搜索页搜索该商品,有任何问题请与具体淘宝商家联系。
  參考價格: 点此进入淘宝搜索页搜索
  分類: 图书,教材教辅与参考书,大学,计算机专业,
  品牌: 王立柱

基本信息·出版社:清华大学出版社

·页码:151 页

·出版日期:2009年09月

·ISBN:730220067X/9787302200673

·条形码:9787302200673

·包装版本:第3版

·装帧:平装

·开本:16

·正文语种:中文

·丛书名:普通高等教育“十一五”国家级规划教材,教育部:微软精品课程建设立项项目

产品信息有问题吗?请帮我们更新产品信息。

内容简介《C/C++与数据结构(第3版)》(下册)共9章,从第26~第34章,涵盖了二叉树、堆、树、图、二叉搜索树、平衡二叉搜索树、B树、散列和排序等主要内容。基于上册已经包含了C++基础,模拟的C++新标准中的Vector、List、String等数据结构线性部分,通用算法和迭代器等内容,《C/C++与数据结构(第3版)》集中讨论了数据结构的非线性部分,并利用C++实现了全部算法。

《C/C++与数据结构(第3版)(下册)》可以作为C语言和C++语言的本科或专科教材,也可以作为计算机爱好者和程序员的自学教材或参考书。

作者简介王立柱,天津师范大学教授。1982年毕业于南开大学数学系,毕业后在南开大学分校数学系任教,后转入天津师范大学管理学院执教至今。主要从事计算机基础教育和计算机应用研究。讲授过的课程有:离散数学、数学分析、数据结构等。

编辑推荐《C/C++与数据结构(第3版)(下册)》多媒体教学软件独具特色:具有二级菜单.与教材章节一一对应。配有任务栏.相当于三级菜单,与教材每节中更具体的内容对应。算法、程序代码、抽象结构、存储结果、运行过程和结果同时展现。蓝色光条用于跟踪演示程序执行过程。黑色光条用于算法分析。显示器上的数据输入按钮用于输入用户要处理的数据。黄色字体是热区,单击可显示相关的具体内容。《C/C++与数据结构(第3版)(下册)》多媒体教学软件可在作者的教学网站下载。

目录

第26章 二叉树 /1

26.1 二叉树的基本概念 /1

26.2 二叉树的性质 /2

26.3 二叉树的存储结构 /3

26.3.1 二叉树顺序存储 /3

26.3.2 二叉树链式存储 /3

26.4 二叉树层次遍历 /5

26.4.1 层次遍历 /6

26.4.2 把二叉树的顺序存储转为链式存储 /7

26.4.3 垂直输出二叉树 /7

26.5 二叉树前序遍历 /11

26.5.1 前序遍历递归算法 /11

26.5.2 前序遍历非递归算法 /12

26.5.3 快速排序 /12

26.5.4 集合的幂集 /14

26.6 二叉树中序遍历 /16

26.6.1 中序遍历递归算法 /16

26.6.2 中序遍历非递归算法 /17

26.6.3 汉诺塔递归算法 /18

26.7 二叉树后序遍历 /19

26.7.1 后序遍历递归算法 /19

26.7.2 后序遍历非递归算法 /20

26.7.3 求二叉树深度、二叉链表的复制和删除 /20

26.7.4 把二叉树的顺序存储转为链式存储的递归算法 /22

26.7.5 由前序和中序序列建立二叉链表 /22

习题26 /24

第27章 堆 /25

27.1 小根堆Heap类 /25

27.2 堆排序 /29

27.3 哈夫曼树 /32

27.3.1 哈夫曼树的定义 /32

27.3.2 建立哈夫曼树 /32

27.3.3 哈夫曼编码 /35

习题27 /35

第28章 树 /36

28.1 树的基本概念和存储 /36

28.2 Tree类 /39

28.3 树的遍历 /43

28.4 八皇后 /45

习题28 /49

第29章 图 /50

29.1 图的基本概念 /50

29.2 Graph类 /52

29.3 图的遍历 /59

29.3.1 广度优先遍历 /59

29.3.2 深度优先遍历 /61

29.4 最小生成树 /63

29.4.1 普里姆算法 /64

29.4.2 克鲁斯卡尔算法 /70

29.5 最短路径 /73

29.5.1 单源最短路径迪克斯特拉算法 /73

29.5.2 所有顶点对之间的最短带权路径 /79

29.5.3 一顶点对之间的最短带权路径 /84

29.6 拓扑序列 /86

29.7 关键路径 /90

29.8 迷宫求解 /93

习题29 /97

第30章 二叉搜索树 /98

30.1 类型声明与实现 /98

30.2 中序迭代器 /104

30.3 频率统计 /106

30.4 中序线索二叉树 /108

习题30 /109

第31章 平衡二叉搜索树 /110

31.1 动态平衡方法 /110

31.2 二叉平衡搜索树类型 /113

习题31 /116

第32章 B树 /117

32.1 线性索引 /117

32.2 静态m路搜索树 /118

32.3 B-树 /119

32.4 B+树 /122

第33章 散列 /124

33.1 散列表 /124

33.2 散列函数 /125

33.2.1 平方取中法 /125

33.2.2 除留余数法 /125

33.2.3 折叠法 /126

33.2.4 数字分析法 /126

33.3 分离链接法 /126

33.4 开放定址法 /129

33.4.1 线性探查法 /129

33.4.2 平方探查法 /130

33.4.3 双散列函数探查法 /130

习题33 /130

第34章 排序 /131

34.1 性能分析 /131

34.1.1 时间复杂性分析 /131

34.1.2 空间复杂性分析 /132

34.2 插入排序 /133

34.2.1 直接插入排序 /133

34.2.2 折半插入排序 /134

34.2.3 希尔排序 /135

34.3 交换排序 /136

34.3.1 起泡排序 /136

34.3.2 快速排序 /137

34.4 选择排序 /138

34.4.1 直接选择排序 /138

34.4.2 堆排序 /139

34.4.3 锦标赛排序 /140

34.5 归并排序 /144

34.5.1 归并 /144

34.5.2 迭代的归并排序 /145

34.6 基数排序 /146

34.7 外排序 /148

34.7.1 外排序基本过程 /148

34.7.2 k 路归并 /149

习题34 /151

参考文献 /152

……[看更多目录]

序言本书(下册)内容是在上册已经包含了C++基础,模拟的C++新标准中的Vector、List、String等数据结构线性部分,通用算法和迭代器内容的基础上组织的,主要讨论数据结构非线性部分,共9章,从第26~第34章,涵盖了二叉树、堆、树、图、二叉搜索树、平衡二叉搜索树、B树、散列和排序,并利用C++实现了全部算法。这是与第2版教材的主要区别。

本书将一些经典的算法纳入相应的经典结构中进行描述。例如,快速排序和幂集归入二叉树前序遍历,汉诺塔问题并入二叉树中序遍历,哈夫曼树是堆类的直接应用,八皇后和迷宫分别在树和图的深度优先遍历中解决。本书中的算法描述清晰紧凑,代码简洁流畅,既保留了第2版的特点,又因为改用C++语言描述而有所不同。

图1 多媒体软件示例算法性能分析历来是学习数据结构的难点之一,本书将它放在了最后一章,和排序算法一起讨论,使读者可以首先集中精力熟悉和理解各种算法设计和代码实现,然后在充分的感性认识基础上,以综合提高的姿态,以排序为典型内容,学习和掌握算法的时间和空间复杂度分析技术。这是第2版教材没有的内容。

本书的图类综合了Vector、List、适配器、堆方法和C++文件读写方法等多项内容,增强了教材内容的连贯性和整体性。

和上册一样,本书配备了多媒体课件(如图1所示),既可助教又可助学,使复杂和抽象的算法变得直观而简单,尤其对平衡二叉树、图的最短路径、单元最短路径等难度很大的算法,效果更加明显,对初学者更是意义非凡。

本书的源代码和课件可以从精品课网站上直接下载,网址:http://59.67.71.237:8080/dsc.

读者如有问题或发现错误,欢迎直接与作者联系,作者将不胜感激。

文摘插图:

C/C++与数据结构(第3版)(下册)(普通高等教育“十一五”国家级规划教材,教育部:微软精品课程建设立项项目)

如何在二叉链表上实现层次遍历呢?为此有必要把线性链表和二叉链表作一次比较:线性链表存储的是线性结构,结点结构中存放着其后继的指针,遍历又是按照前驱——后继的顺序进行。访问一个结点之后,从当前结点的指针域可以直接读取其后继结点的地址。而二叉链表存储的是非线性结构,结点结构中虽然寄存着其后继的指针,但是遍历是一层一层进行的,不是按前驱一一后继的顺序,从访问的当前结点的结构中不能直接得到下一个要访问的结点地址。这表明,算法设计的关键是如何按照层次遍历的顺序寄存并提取结点指针,为此,引用队列用来存储二叉链表的结点指针。对结点的访问可以在结点指针出队时进行,也可以在人队前进行,由此分成两种层次遍历方法。

方法1的步骤(过程演示见表26.2中的方法1,代码见表26.3中层次遍历方法1):

(1)建队列,根结点指针入队。

(2)如果队列不空,从队列删除一个结点指针,访问该指针指向的结点,并把该结点的左右孩子指针(如果存在)依次插入队列。

(3)重复步骤(2),直至队列为空。

方法2的步骤(过程演示见表26.2中的方法2,代码见表26.3中层次遍历方法2):

(1)建队列,访问根结点,根结点指针入队。

(2)若队列不空,则从队列读取一个结点指针。如果该结点有左孩子,访问左孩子,然后把左孩子指针插入队中;如果该结点有右孩子,访问右孩子,然后把右孩子指针插入队中。

(3)重复步骤(2),直至队列为空。

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有