数据结构题集.pdf

数据结构题集.pdf
 

书籍描述

编辑推荐
《清华大学计算机系列教材:数据结构题集(C语言版)》内容丰富、程序设计观点新颖,在内容的详尽程度上接近课程辅导材料,不仅可作为大专院校的配套教材,也是广大工程技术人员和自学读者颇有帮助的辅助教材。

目录
第一篇习题与学习指导
第0章本篇提要与作业规范
第1章绪论(预备知识)
第2章线性表
第3章栈和队列
第4章串
笫5章数组与广义表
第6章树和二叉树
第7章图
第8章动态存储管理
第9章查找
第10章内部排序
第11章外部排序
第12章文件
第二篇实习题
一、概述
二、实习步骤
三、实习报告规范
实习0抽象数据类型
实习1线性表及其应用
实习2栈和队列及其应用
实习3串及其应用
实习4数组和广义表
实习5树、图及其应用
实习6存储管理、查找和排序
第三篇部分习题的解答或提示
附录数据结构算法演示系统DSDEMO(类C描述语言3.1中文版)使用手册

文摘
版权页:

数据结构题集

插图:

数据结构题集

(2)每种书的记录可以用动(或静)态链式结构。
借阅登记信息可以链接在相应的那种书的记录之后。
【选作内容】
(1)将一次会话过程(即程序一次运行)中的全部人机对话记入一个日志文件“log”中去。
(2)增加列出某著者全部著作名的操作。思考如何提高这一操作的效率,参阅教科书12.6.2节。
(3)增加列出某种书状态的操作。状态信息除了包括这种书记录的全部信息外还包括最早到期(包括已逾期)的借阅者证号,日期可用整数实现,以求简化。
(4)增加预约借书功能。
6.4⑤平衡二叉树操作的演示
【问题描述】
利用平衡二叉树实现一个动态查找表。
【基本要求】
实现动态查找表的三种基本功能:查找、插入和删除。
【测试数据】
由读者自行设定。
【实现提示】
(1)初始,平衡二叉树为空树,操作界面给出查找、插入和删除三种操作供选择。每种操作均要提示输入关键字。每次插入或删除一个结点后,应更新平衡二叉树的显示。
(2)平衡二叉树的显示可采用如6.69题要求的凹入表形式,也可以采用图形界面画出树形。
(3)教科书已给出查找和插入算法,本题重点在于对删除算法的设计和实现。假设要删除关键字为x的结点。如果x不在叶子结点上,则用它左子树中的最大值或右子树中的最小值取代x。如此反复取代,直到删除动作传递到某个叶子结点。删除叶子结点时,若需要进行平衡变换,可采用插入的平衡变换的反变换(如,左子树变矮对应于右子树长高)。
【选作内容】
(1)合并两棵平衡二叉树。
(2)把一棵平衡二叉树分裂为两棵平衡二叉树,使得在一棵树中的所有关键字都小于或等于x,另一棵树中的任一关键字都大于x。
6.5③英语词典的维护和识别
【问题描述】
Trie树通常作为一种索引树,这种结构对于大小变化很大的关键字特别有用。利用Trie树实现一个英语单词辅助记忆系统,完成相应的建表和查表程序。
【基本要求】
不限定Trie树的层次,每个叶子结点只含一个关键字,采用单字符逐层分割的策略,实现Trie树的插入、删除和查询的算法,查询可以有两种方式:查询一个完整的单词或者查询以某几个字母开头的单词。
【测试数据】
自行设定。
【实现提示】
以实习三中已实现的串类型或C语言中提供的长度不限的串类型表示关键字,叶子结点内应包括英语单词及其注音、释义等信息。
【选作内容】
限定Trie树的层次,每个叶子结点可以包含多个关键字。
6.6③内部排序算法比较
【问题描述】
在教科书中,各种内部排序算法的时间复杂度分析结果只给出了算法执行时间的阶,或大概执行时间。试通过随机数据比较各算法的关键字比较次数和关键字移动次数,以取得直观感受。

内容简介
《清华大学计算机系列教材:数据结构题集(C语言版)》分为12章,每一章大致由基本内容、学习要点、算法演示内容及基础知识题和算法设计题五部分组成。实习题分成六组,每一组都有鲜明的主题,围绕1至2种数据结构,安排4至9个题,每个题都有明确的练习目的和要求,在每一组中都给出一个实习报告的范例,以供读者参考。

购买书籍

当当网购书 京东购书 卓越购书

PDF电子书下载地址

相关书籍

搜索更多