没有合适的资源?快使用搜索试试~ 我知道了~
c语言数据结构抽象数据类型模板库及常用算法C语言的实现毕业论文.docx
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 13 浏览量
2023-08-10
10:01:58
上传
评论
收藏 669KB DOCX 举报
温馨提示
试读
33页
c语言数据结构抽象数据类型模板库及常用算法C语言的实现毕业论文.docx
资源推荐
资源详情
资源评论
数据结构抽象数据类型模板库
及常用算法 C 语言的实现
[摘 要] 数据结构是计算机程序设计的重要理论技术基础,也是计算机学科的核
心课程, 它不仅涉及到计算机硬件(特别是编码理论、存储装置和存取方法等)的研究范
围,而且和计算机软件的研究有着密切的关系。通常情况下,精心选择的数据结构可以
带来更高的运行或者存储效率。一旦定义了一个抽象数据类型,程序设计中就可以像使
用基本数据类型那样方便。抽象数据类型模板库建立的目的就是简化编码过程,而且对
于深化对数据结构算法的理解,提高计算机程序设计水平具有很好的促进作用。本文简
述了用 C 语言实现《数据结构》定义的类型模板库和排序算法的整个过程,对于其他类
似项目也有一定的借鉴意义。
[关键词] 数据结构;类库;算法;C 语言
Implementation of Data Structure ADT
and Commonly-used Algorithms Using C Language
Abstract: Data Structure is an important theoretical and technical basis for computer
programming, and also the core course of computer science, it involves not only a scope of
the study about computer hardware (especially coding theory, storage device and access
methods), but also has a close connection with computer software. Generally, a carefully
chosen Data Structure can bring higher operating and storage efficiency. Once defined the
ADT and the specific implementation, program design is as convenient as the basic data type .
Library is established to simplify coding process, and it plays a positive role in deepening the
understanding of the Algorithm in Data Structure and improving the level of computer
programming. This paper briefly describes the entire process that using pure C Language in a
Data Structure to realize some common ADT, and has achieved the Data Structure of ADT
template library.
Key words:Data Structure ; Library ; Algorithm ; C Language
目 录
1 背景与意义.............................................................................................................................1
1.1 课题背景.......................................................................................................................1
1.2 课题研究意义...............................................................................................................1
1.3 研究的内容和论文结构...............................................................................................2
1.4 本章小结.......................................................................................................................2
2 系统分析.................................................................................................................................2
2.1 可行性分析...................................................................................................................2
2.1.1 理论上可行性分析.............................................................................................3
2.1.2 技术上可行性分析.............................................................................................3
2.1.3 操作可行性分析.................................................................................................3
2.1.4 其他.....................................................................................................................3
2.2 需求分析.......................................................................................................................4
2.3 本章小结.......................................................................................................................4
3 系统设计.................................................................................................................................4
3.1 系统设计思路...............................................................................................................4
3.2 相应的技术运用...........................................................................................................5
3.2.1 分析使用语言的优越性.....................................................................................5
3.2.2 早期设计.............................................................................................................5
3.2.3 软硬件要求.........................................................................................................5
3.3 系统功能模块设计.......................................................................................................5
3.4 具体实现.......................................................................................................................6
3.4.1 创建类库.............................................................................................................6
3.4.2 实现算法.............................................................................................................7
3.5 本章小结.......................................................................................................................8
4 编码与实现.............................................................................................................................8
4.1 算法结构.......................................................................................................................8
4.1.1 简单介绍常见的数据结构.................................................................................8
4.1.2 排序算法、线性结构和树形结构.....................................................................8
4.2 具体方法实现以及相关代码实现.............................................................................10
4.2.1 排序算法...........................................................................................................10
4.2.2 线性结构...........................................................................................................16
4.2.3 树形结构...........................................................................................................20
4.3 本章小结.....................................................................................................................21
5 系统测试与运行...................................................................................................................22
5.1 系统测试的目的与意义.............................................................................................22
5.2 系统测试的原理.........................................................................................................22
5.2.1 系统测试的原理...............................................................................................22
5.2.2 系统测试原则...................................................................................................23
5.3 测试方法.....................................................................................................................23
5.4 测试过程.....................................................................................................................25
5.5 本章小结.....................................................................................................................26
6 总结与展望...........................................................................................................................26
结束语.......................................................................................................................................27
参考文献...................................................................................................................................28
致谢...........................................................................................................................................29
1
1 背景与意义
1.1 课题背景
数据结构作为编程的基础在计算机程序语言的发展中显得越来越重要,数据结构作
为一门独立的课程在国外是从 1968 年才开始设立的。1968 年美国唐•欧•克努特教授开
创了数据结构的最初体系,他所著的《计算机程序设计技巧》第一卷《基本算法》是第
一本较为系统的阐述数据的逻辑结构和存储结构及其操作的著作。数据结构在计算机科
学中是一门综合性的专业基础课。数据结构是介于数学、计算机硬件和计算机软件三者
之间的一门核心课程。数据结构这一门课的内容不仅是一般程序设计的基础,而且是设
计和实现编译程序、操作系统、数据库系统及其他系统程序的重要基础。
著名计算机科学家沃思提出的公式:
数据结构+算法=程序
可以知道数据结构和算法的组合一起就是一个完整的程序,一般而言,数据结构的
选择首先会从抽象数据类型的选择开始,数据结构可通过编程语言所提供的数据类型、
引用及其他操作加以实现。本次课题研究着力按照要求建立一个类库,在方便调用的同
时更充分的掌握数据结构抽象数据类型的知识,课题中对线性结构、树形结构以及基本
排序算法都有涉及,本次设计的目的就是在尽可能完善的可提要求的同时,对所学知识
进一步巩固
[1]
。
1.2 课题研究意义
首先我们要了解什么是数据结构,根据以往所学可以大致这样总结,数据结构(data
structure)是相互之间存在一种或多种特定关系的数据元素的集合。在任何问题中,
数据元素都不是孤立存在的,而是在他们之间存在着某种关系,这种数据元素相互之间
的关系称之为结构(structure), 在本次设计中,主要涉及的只是其中一部分数据结构
的抽象数据类型其中包括一些常用的排序算法以及简单的线性结构。建立一个类库之后,
再把这些算法添加到里面就可以作为一个普通的模板库使用。
类库就是程序员事先解决好的问题,以代码的形式集合在一起,在以后的工作中遇
到同样或者类似的问题时可以调用的方法,这样就能节省很多不必要的浪费,本课题旨
在用纯 C 语言建立相对完善的数据结构教材,方便学习和使用.在使用这调用模板库中算
法的同时更能学习其算法思想。
在许多类型的程序设计中,选择适当的数据结构是一个主要的考虑因素, 确定了数
据结构后便能很容易地得到算法。而有些时候,方向则会颠倒过来:例如当某个关键作
业需要特定数据结构下的算法时,会反过来确定其所使用的数据结构。然而,不管是哪
种情况,数据结构的选择都是至关重要的
[2]
。
剩余32页未读,继续阅读
资源评论
豆包程序员
- 粉丝: 2726
- 资源: 3504
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功