- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构_ZX
数据结构 数据结构部分主要内容 绪论 线性表和向量 链表 栈和队列 数组 树和二叉树 图 查找 排序 第一章 绪论 什么是数据结构 基本概念和术语 算法及算法分析 1.1 什么是数据结构 计算机求解问题归根到底是进行数据处理。 计算机处理问题首先需要用正确的方法描述问题。这是开发高性能的软件的关键。 因此,如何在计算机中组织、存储、传递数据是一个基本问题。 Niklaus Wirth提出: 程序=算法+数据结构 数据结构在软件开发中的地位 概括地说 数据结构是一门讨论“描述现实世界实体的数学模型(非数值计算)及其上的操作在计算机中如何表示和实现”的学科。 1.2 基本概念和术语 数据结构由某一数据对象及该数据元素之间的关系组成。记为: Data_Structure={D,R} 其中, D:某一数据对象。 R:该对象所有数据成员间的关系的有限集合。 数据的逻辑结构和物理结构 逻辑结构:从用户角度看到的数据元素间抽象的相互关系。 例:线性(线性表、字符串、队列) 非线性(树、图) 物理结构:数据在计算机内部的存储方式。是逻辑结构的存储映象。 例:连续存储(线性表的向量表示) 非连续存储(线性表的链表表示) 四种关系(结构) 1.3 算法及算法分析 算法(Algorithm):对特定问题求解步骤的一种描述。由一套清楚的规则组成,规定了一系列操作顺序,用有限的步骤提供问题的解答。 算法的特性: 1、确定性:每种运算确定,无二义性。 2、可行性:每种运算可在有限的时空内完成。 3、有穷性:解答必须在有限步内得到,不能出现“死循环”。 4、零个以上的输入,一个以上的输出。 算法效率的度量方法 事前估计:时空复杂度。 事后测试:在算法的某些地方插入时间函数,测试算法完成某一规定的功能所虚的时间。 所获得的数据与运行环境有很大的关系(系统硬件配置、语言、OS) 算法的时空复杂度 问题的规模 问题规模常用整数表示 算法的复杂度是问题规模的函数。 空间复杂度 常用算法 枚举法(穷举法) 迭代法 递归法 递推法 归纳法 回溯法 数字仿真法 第二章 线性表和向量 线性表的定义 向量的概念 线性表的顺序表示的实现 2.1 线性表的定义 2.1.1 定义 线性表的逻辑结构是n个数据元素的有限序列: (a1, a2 ,a3,…an) n为线性表的长度(n≥0),n=0的表称为空表 例:一组学生的记录。 (a,b,c,d,e….x,y,z) 线性表的特性 数据元素呈线性关系.必存在唯一的称为“第一个”的数据元素;必存在唯一的称为“最后一个”的数据元素; 除第一个元素外,每个元素都有且只有一个前驱元素; 除最后一个元素外,每个元素都有且只有一个后继元素。 所有数据元素ai在同一个线性表中必须是相同的数据类型 特性: 有限:是数据元素一个有限的序列 有序:元素间相对位置是线性的。 2.1.2 线性表的常用运算 查找 插入 删除 排序 确定表的长度 复制 分解 合并 线性表的存储结构 顺序方式 非顺序方式 线性表按其存储结构可分为顺序表和链表。用顺序存储结构存储的线性表称为顺序表;用链式存储结构存储的线性表称为链表 2.2 向量的概念 2.2.1 定义 向量结构逻辑上是一个有限元素的有序集合,并且用一个整型标号(下标)标志向量中的各元素。 用V表示向量,V[i]表示向量的第i个元素。 向量的第i个元素即线性表的ai 向量的性质: 2.2.2 顺序存储方式 元素存储位置 一维向量(一维数组) 一维数组a[n], Loc(a1)为第一个元素的存储位置。 Loc(ai)= Loc(a1) +(i-1)*len len:每个元素所占的字节数。 二维向量(二维数组) 二维数组a[m][n], Loc(a1)为第一个元素的存储位置。 Loc(aij)= Loc(a11) +(i-1)*n*len+(j-1)*len n维向量(n维数组) 2.3 线性表的顺序表示的实现 顺序表的查找 查找: LocateElem_Sq 2.3.3 顺序表插入 顺序表插入:ListInsert_Sq 2.3.4 顺序表的删除 顺序表的删除:ListDelete_Sq 分析 由于顺序表的特性,在元素插入/删除时,需要移动数据。 平均移动次数:AMN(Average Moving Number) 插入时: 删除时: 顺序表的不足 在顺序表中插入或删除元素时,每进行一次插入或删除,都要移动近乎一半的元素,当表较大时,效率低。 对于长度可变的线性表,必须按可能达到的最大长度分配空间 第三章 链表 链式存储结构概念 单向链表 循环链表 双向链表
您可能关注的文档
最近下载
- 基坑支护内支撑梁拆除施工方案.docx VIP
- 最新人教版一年级上册《数学游戏》课件(整套)教学PPT(2024年秋-新教材).pptx VIP
- 最新人教版一年级数学上册《数学游戏》教学课件(整套)PPT(2024秋-新教材).pptx VIP
- GBT6058-2005 纤维缠绕压力容器制备和内压试验方法.pdf
- GB╱T 23711.1-2009 氟塑料衬里压力容器电火花试验方法.pdf
- 7m焦炉推焦车的结构特征.pdf
- 研发领料单模板.docx VIP
- 辽宁省技工学校审批表.doc VIP
- GB 26501--2011 氟塑料衬里压力容器 通用技术条件.pdf
- 施工放样报验单.doc VIP
文档评论(0)