- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
算法题(26) 简答题(40) 综合题(24) 论述题(10) 结论(10) * 线性表(10) * 栈队列(18) * * 串(4) * 数组(4) * 树与二叉树(17) * * 图(6) * * 查找(16) * * 排序(15) * *
注:
算法题: 程序填空;添加注释;写运行结果;画图;描述算法思想。
综合题: 画图;根据图表回答问题。
数据结构考试重点(答案仅供参考)
绪论
谈谈你对“数据结构”概念的理解。
数据结构是相互之间存在一种或多种特定关系的数据元素的集合,在任何问题中,数据元素都不是孤立存在的。而是他们之间存在着某种关系,这种数据元素相互之间的关系称为结构,这也是我们要讨论的数据结构的主要内容。一般来说,数据结构包括以下三方面的内容:
数据元素之间的逻辑关系,也称数据的逻辑结构。数据的逻辑结构是抽象的,它不依赖计算机的实现,只依赖人们对事物的理解和描述。
数据元素及其关系,在计算机内部(内存)中的表示,称其为数据的物理结构或数据的存储结构。
谈谈你对“抽象数据类型(ADT)”的理解。
抽象数据类型(Abstract Data Type 简称ADT)是指一个数学模型以及定义在此数学模型上的一组操作。抽象数据类型需要通过固有数据类型(高级编程语言中已实现的数据类型)来实现。抽象数据类型是与表示无关的数据类型,是一个数据模型及定义在该模型上的一组运算。对一个抽象数据类型进行定义时,必须给出它的名字及各运算的运算符名,即函数名,并且规定这些函数的参数性质。一旦定义了一个抽象数据类型及具体实现,程序设计中就可以像使用基本数据类型那样,十分方便地使用抽象数据类型。
线性表
顺序表的动态内存分配的好处是什么?
长度能动态增长;根据实际需要分配所需内存大小,合理利用资源
不需要预先分配存储空间;
单链表中引入“头结点”的好处是什么? 什么情况下单链表需要使用“尾指针”?
(1)由于开始结点的位置存放在头结点的指针域中,所以对链表第一个位置的操作同其他位置一样,无须特殊处理。
(2) 只有“头指针”时,访问“头”方便,而访问“尾”不方便。有时候,根据需要,一个单向循环链表只设置尾指针,而不设置头指针。此时访问“头”和“尾”都很方便。
在主调函数中构建了一个“不带头结点”的单链表L1(即该链表已完成初始化,甚至链表已不空),在子函数中对该单链表进行 插入/删除 操作。说明 在参数传递时,使用“引用”与不使用“引用”的区别。
在主调函数中 声明了 一个单链表L1,在子函数 InitLink( )中对该单链表 初始化 为一个“带头结点”的单链表。在 “不使用引用型参数”的情况下,
写出初始化函数。
typedef int data;
typedef struct LNode{
data d;
Struct LNode *next;
}LNode ,*LinkList;
LinkList initialize (void)
{ LinkList L;
L=(LinkList)malloc (sizeof(LNode);L-next=NULL;return L;
}
2)写出调用该函数的语句。
Void main ()
{ LinkList L1;
L1=initialize();
.
.
.
return 0;
}
栈队列
对“链栈”, 哪一端是“栈顶”?为什么?
链头作为栈顶
原因:链栈是运算受限的单链表,其插入和删除操作仅限制在表头位置上操作,因此将链头作为栈顶方便操作。
链栈中还要不要“头结点”?为什么?
不要。原因:链栈是运算受限的单链表,其插入和删除的操作仅在链表头位置上进行。如果加了头结点,等于要对头结点之后的结点进行操作,反而使算法更复杂。
顺序栈采用动态内存分配,数据结构定义如下:
typedef struct sStack{
DataType *base;
DataType *top;
int stacksize; //最大容量
} SqStack;
如何求栈高?
Int stackHeight (SqStack sq)
{ return sq.top-sq.base;
}
2)能否将 top 定义成 int 类型?
可以
链队列的“队头”与其它链式结构(如 链栈 或者 单链表)有什么不同?
为什么引入“循环队列”? 写出循环队列 判队满,判队空 以及 求队长的表达式。
原因:为充分利用向量空间,克服假溢出现象
方法:
1)设置一个队长变
您可能关注的文档
- 句式解析--语文.doc
- 反渗透处理装置.doc
- 反渗透的系统设计.doc
- 可研报告--橡胶轮胎.doc
- 吉林大学-2006级生物化学Ⅰ试题A.doc
- 吉林大学-2007级生化试题(I)(B卷)(2009-6-22).doc
- 噪声防治方案.doc
- 四川省南充市高中2012级第二诊断考试生物试题.doc
- 四年级上乘法交换律和结合律练习题.doc
- 同济大学桥梁概念设计.docx
- 2025年秋季温州交运集团社招44人笔试备考题库及答案解析.docx
- 2025河北雄安人才服务有限公司工程项目管理岗(报批报建)岗位招聘考试备考题库及答案解析.docx
- 2025重庆万州区百安坝街道办事处公益岗招聘8人笔试备考试题及答案解析.docx
- 2026年杭州临平公开招聘事业编制教师150人考试备考试题及答案解析.docx
- 2025河北石家庄铁路职业技术学院第二次招聘9人笔试备考题库及答案解析.docx
- 2025年凌源市紧密型县域医共体面向社会公开招聘合同制人员56人笔试模拟试题及答案解析.docx
- 2025年浙江北京师范大学台州实验学校公开招聘优秀教师51人笔试备考试题及答案解析.docx
- 同仁堂集团面向社会公开招聘集团本部干部考试参考试题附答案解析.docx
- 2025贵州黔南州永和镇第二次招聘城镇公益性岗位人员3人笔试模拟试题及答案解析.docx
- 2025内蒙古新城宾馆旅游业集团有限责任公司员工招聘15人考试参考试题附答案解析.docx
原创力文档


文档评论(0)