- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据结构课程设计
设计说明书
双链表的建立插入查找删除算法的实现
学生姓名 程站伟 学号 1221024049 班级 信管1202 成绩 指导教师 申静
数学与计算机科学学院
2014年3月7日
课程设计任务书
2013—2014学年第二学期
课程设计名称: 数据结构课程设计 课程设计题目: 双链表的建立插入查找删除算法的实现 完 成 期 限: 自 2014年 2 月24日至 2014年 3 月 7 日共 2 周 设计内容:
1.任务说明
(1)任意输入一组数据,能得到一个带头结点的双向链表;
(2)查找数据域为一特定值的某个结点时,从表头结点往后依次比较各结点数据域的值,若正是该特定值,则返回指向结点的指针,否则继续往后查,直到表尾;
(3)可以随意地在某已知结点p前或者p后插入一个新的结点;
(4)删除某个结点,即插入某个结点的逆操作。
2.要求
1)问题分析和任务定义:根据设计题目的要求,充分地分析和理解问题,明确问题要求做什么?
2)逻辑设计:写出抽象数据类型的定义,各个主要模块的算法,并画出模块之间的调用关系图;
3)详细设计:定义相应的存储结构并写出各函数的伪码算法。
4)程序编码:把详细设计的结果进一步求精为程序设计语言程序。
5)程序调试与测试:采用自底向上,分模块进行,即先调试低层函数。
6)结果分析:程序运行结果包括正确的输入及其输出结果和含有错误的输入及其输出结果。算法的时间、空间复杂性分析;
7)编写课程设计报告;
3.参考资料
指导教师:申静 教研室负责人:申静
课程设计评阅
评语:
指导教师签名:
年 月 日
摘要
此课题讨论如何在链式结构中建立双向链表,并且合理利用如何在双链表中引用插入、查找、删除运算。双向链表又名双链表,它有两个指针域,其一指向直接前驱,另一指向直接后继。双链表由头指针head唯一确定的。带头结点的双链表的某些运算变得方便。和单链的循环表类似,双链表也可以有相应的循环表。用一个表头单元将双链表首尾相接,即将表头单元中的指针指向表尾,并将表尾单元的next指针指向表头单元。1. 课题描述 1
2.需求分析 2
2.1序功能说明 2
3.概要设计 3
3.1 程序描述 3
3.2双链表元素的插入 3
3.4双链表的删除 3
4.程序流程图 4
4.1创建双向链表 4
4.2插入新的元素 5
4.3删除元素 6
4.4查找元素 7
5.程序编码 8
6.程序调试分析 13
7.结果分析 14
7.1 进行双链表的创建 14
7.2 进行插入操作 14
7.3 进行查找操作 15
7.4 删除操作 15
总结 16
参考文献 17
课题描述
双链表双(向)链表中有两条方向不同的链,即每个结点中除next域存放后继结点地址外,还增加一个指向其直接前趋的指针域prior。双链表由头指针head惟一确定的。 带头结点的双链表的某些运算变得方便。 将头结点和尾结点链接起来,为双(向)循环链表。Typedef struct DuLNode{
ElemType date;
struct DuLNode *prior;
struct DuLNode *next;
}DuLNode,*DuLinkList;
2.需求分析
2.1序功能说明
链表是线性表的链式表示,由于它不要求逻辑上相邻的元素子在物理位置上也相邻,所以它没有顺序存储结构在插入删除操作时需要移动大量元素的弱点。双链表有两个指针域,一个指向指针前驱,一个指向指针后继。本程序包括的功能:插入、查找、删除。
如图2.11为双链表的流程示意图:
图2.1
如图2.12是在双向链表中插入结点时指针变化状况:
图2.2插入元素
如图2.13是在双向链表中删除结点时指针变化状况:
图2.3删除结点
3.概要设计
3.1 程序描述
本次程序设计包括双链表的建立,链表的输出,数值的插入,数值的删除,数值的查找,输出菜单列表等六大函数.主要分为双链表创建,双链表创建指针变化,结果输出,三大步骤。
3.2双链表元素的插入
Status ListInsert_DuL(DuLinkList ;L, i
您可能关注的文档
最近下载
- (2024秋新版)人教版七年级数学上册全册PPT课件.pptx
- dixell帝思 xc15cx-xc35cx 调试维修参数设置资料.pdf
- transcad交通需求模型手册_chapter12公交分配.pdf VIP
- 高校后勤餐饮经营发展探究——以浙江树人大学为例.pdf VIP
- 幼儿园教室环创培训.pptx VIP
- 2023辽宁沈阳市铁西区面向全区招聘社区残疾人工作专职干事8人考试备考题库及答案解析.docx VIP
- 2025年安徽省池州市辅警协警笔试笔试预测试题(附答案).docx VIP
- 《追求理解的教学设计》读书心得.docx VIP
- 糖皮质激素诱导骨质疏松诊治专家共识.pptx VIP
- 2025内蒙古巴彦淖尔市能源(集团)有限公司第二批招聘55人笔试模拟试题及答案解析.docx VIP
文档评论(0)