- 1、本内容来自版权合作机构,您在本站购买的阅读使用权仅限于您本人阅读使用,您不得/不能给任何第三方使用,由此造成的一切相关后果本平台保留向您追偿索赔的权利!版权所有,后果自负!
- 2、本文档为正版电子图书,虚拟物品付费之后概不接收任何理由退款。
查看更多
本书是严蔚敏所著的《数据结构》(C语言版,清华大学出版社)的辅导书,主要具有以下几个方面的特点:1.归纳经典习题,强化知识考点。为了进一步巩固和强化各章知识难点的复习,特针对该教材的重难点相应整理了典型强化习题,并对相关知识点进行归纳和延伸,梳理知识点逻辑关系,以达到高效复习的目的。2.精选考研真题,巩固重难点知识。为了强化对重要知识点的理解,本书精选了部分名校近几年的数据结构考研真题,这些高校大部分以该教材作为考研参考书目。所选考研真题基本涵盖了各个章节的考点和难点,特别注重联系实际,凸显当前
第1章 绪 论
1.1 强化习题详解
1设有数据结构(D,R),其中D={d1,d2,d3,d4},R={r},r={(d1,d2),(d2,d3),(d3,d4)},试按图论中图的画法惯例画出其逻辑结构图。
答:逻辑结构图如图1-1所示。
图1-1 程序逻辑结构图
2试仿照三元组的抽象数据类型分别写出抽象数据类型复数和有理数的定义(有理数是其分子、分母均为自然数且分母不为零的分数)。
答:
ADT Complex{
数据对象:D={r,i|r,i为实数}
数据关系:R={lt;r,igt;}
基本操作:
InitComplex(amp;C,re,im)
操作结果:构造一个复数C,其实部和虚部分别为re和im
DestroyComplex(amp;C)
操作结果:销毁复数C
Get(C,k,amp;e)
操作结果:用e返回复数C的第k元的值
Put(amp;C,k,e)
操作结果:改变复数C的第k元的值为e
IsAscending(C)
操作结果:如果复数C的两个元素按升序排列,则返回1,否则返回0
IsDescending(C)
操作结果:如果复数C的两个元素按降序排列,则返回1,否则返回0
Max(C,amp;e)
操作结果:用e返回复数C的两个元素中值较大的一个
Min(C,amp;e)
操作结果:用e返回复数C的两个元素中值较小的一个
}ADT Complex
ADT RationalNumber{
数据对象:D={s,m|s,m为自然数,且m不为0}
数据关系:R={lt;s,mgt;}
基本操作:
InitRationalNumber(amp;R,s,m)
操作结果:构造一个有理数R,其分子和分母分别为s和m
DestroyRationalNumber(amp;R)
操作结果:销毁有理数R
Get(R,k,amp;e)
操作结果:用e返回有理数R的第k元的值
Put(amp;R,k,e)
操作结果:改变有理数R的第k元的值为e
IsAscending(R)
操作结果:若有理数R的两个元素按升序排列,则返回1,否则返回0
IsDescending(R)
操作结果:若有理数R的两个元素按降序排列,则返回1,否则返回0
Max(R,amp;e)
操作结果:用e返回有理数R的两个元素中值较大的一个
Min(R,amp;e)
操作结果:用e返回有理数R的两个元素中值较小的一个
}ADT RationalNumber
3试画出与下列程序段等价的框图。
(1)
product=1;
i=1;
while(ilt;=n)
{
product*=i;
i++;
}
(2)
i=0;
do
{
i++;
}while((i!=n)amp;amp;(a[i]!=x));
(3)
switch
{
case xlt;y:
z=y-x;
break;
case x==y:
z=abs(x*y);
break;
default:
z=(x-y)/abs(x)*abs(y); //abs()为取绝对值函数
}
答:以上程序段等价框图分别如图1-2,图1-3和图1-4所示。
(1)
图1-2 等价框图(1)
(2)
图1-3 等价框图(2)
(3)
图1-4 等价框图(3)
4在程序设计中,常用下列三种不同的出错处理方式:
(1)用exit语句终止执行并报告错误;
(2)以函数的返回值区别正确返回或错误返回;
(3)设置一个整型变量的函数参数以区别正确返回或某种错误返回。
试讨论这三种方法各自的优缺点。
答:(1)优点:exit用于异常错误处理,可以强行中断程序的执行,并返回至操作系统,操作系统会自动回收资源。
缺点:退出地点太多不利于调试。
(2)优点:以函数的返回值区别正确返回或错误返回,常用于子程序的测试,便于实现程序的局部控制,不会直接终止程序的运行。
缺点:判断太多,必须人工维护一份错误值列表。
(3)优点:用整型函数进行错误处理可以给出错误类型,便于迅速确定错误。
缺点:需要完整的整型变量的释义,才能方便理解。
5在程序设计中,可采用下列三种方法实现输出和输入:
(1)通过scanf和printf语句;
(2)通过函数的参数显式传递;
(3)通过全局变量隐式传递。
试讨论这三种方法的优缺点。
答:(1)用scanf和printf直接进行输入输出
优点:形象、直观。
缺点:需要格式控制,较为烦琐,如果出现错误,则会引起整个系统的崩溃,参数类型受限制,内存开销大。
(2)通过函数的参数显式传递进行输入输出
优点:便于实现信息的隐蔽,减少出错的可能。
缺点:参数说明比较烦琐,内存开销大。
(3)通过全局变量的隐式传递进行输入输出
优点:方便,只需修改变量的值即可,内存开销小;
缺点:过多的全局变量使程序的维护较为困难,内容极易丢失。
6设
您可能关注的文档
- 2024年考研基础俄语专用教材.pdf
- 2024年一级建造师《市政公用工程管理与实务》考点手册.pdf
- 邬伦《地理信息系统—原理、方法和应用》配套题库【考研真题精选+章节题库】.pdf
- 2024年高分子化学考研题库【考研真题精选+章节题库】.pdf
- 冯瑞河《金融学》配套题库【考研真题精选+章节题库】.pdf
- 2024年无机化学考研题库【考研真题精选+章节题库】(上册).pdf
- 2024年工业设计史考研题库.pdf
- 2024年通信原理考研题库【考研真题精选+章节题库】.pdf
- 2024年概率论与数理统计考研题库【考研真题精选+章节题库】.pdf
- 2024年无机化学考研题库【考研真题精选+章节题库】(下册).pdf
- 奚旦立《环境监测》(第5版)配套题库【考研真题精选+章节题库】.pdf
- 谭浩强《C程序设计》(第5版)典型习题详解.pdf
- 谭浩强《C程序设计》(第5版)配套题库【考研真题精选+章节题库】.pdf
- 师曾志《现代出版学》配套题库【考研真题精选+章节题库】.pdf
- 戴树桂《环境化学》(第2版)配套题库【考研真题精选+章节题库】.pdf
- 汤子瀛《计算机操作系统》(第4版)配套题库【考研真题精选+章节题库】.pdf
- 刘培桐《环境学概论》(第2版)配套题库【考研真题精选+章节题库】.pdf
- 陈力丹《外国新闻传播史纲要》(第2版)配套题库【考研真题精选+章节题库】.pdf
- 左玉辉《环境学》(第2版)配套题库【考研真题精选+章节题库】.pdf
- 刘家林《中国新闻史》配套题库【考研真题精选+章节题库】.pdf
最近下载
- 小学生国家安全教育日学习课件.pptx VIP
- 2型糖尿病临床路径.doc VIP
- 财富管理-全套PPT课件.pptx
- 古诗词鉴赏之诗句赏析-2025年中考语文一轮复习古代诗歌阅读(全国通用)解析版.pdf VIP
- 上海杨浦区2024届中考二模英语试题含答案 .pdf
- 武汉市2025届高中毕业生二月调研考试(二调)数学试卷(含答案详解).pdf
- DB65T 8020-2024 房屋建筑与市政基础设施工程施工现场从业人员配备标准.docx
- 2025年中考政治总复习七年级下册道德与法治全册知识点梳理汇编(精华版).pdf
- 技术、售后服务计划及质量保障措施.docx VIP
- JB_T 11438-2013 全混日粮搅拌机.docx
文档评论(0)