知识大全 数据结构复习总结第一章概论
Posted 知
篇首语:花门楼前见秋草,岂能贫贱相看老。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 数据结构复习总结第一章概论相关的知识,希望对你有一定的参考价值。
第一章概论
基本概念和术语
数据是信息的载体 能被计算机识别 存储和加工处理
数据元素是数据的基本单位 可由若干个数据项组成 数据项是具有独立含义的最小标识单位
数据结构包括 )数据的逻辑结构 从逻辑关系上描述数据 与数据存储无关 独立于计算机;
)数据的存储结构 是逻辑结构用计算机语言的实现 依赖于计算机语言
)数据的运算 定义在逻辑结构上 每种逻辑结构都有一个运算集合 常用的 检索/插入/删除/更新/排序
数据类型是一个值的集合及在值上定义的一组操作的总称 分为原子类型和结构类型
抽象数据类型是抽象数据的组织和与之相关的操作 其优点是将数据和操作封装在一起实现了信息隐藏
ADT是在概念层上描述问题;类是在实现层上描述问题;在应用层上操作对象(类的实例)解决问题
数据的逻辑结构有 )线性结构 若结构是非空集则仅有一个开始和终端结点 并且所有结点最多只有一个直接前趋和后继
)非线性结构 一个结点可能有多个直接前趋和后继
数据的存储结构有 )顺序存储 把逻辑相邻的结点存储在物理上相邻的存储单元内
)链接存储 结点间的逻辑关系由附加指针字段表示
)索引存储 存储结点信息的同时 建立附加索引表 有稠密索引和稀疏索引
)散列存储 按结点的关键字直接计算出存储地址
学习数据结构的意义
程序设计的实质是选择一个好的数据结构 设计一个好的算法 算法取决于描述实际问题的数据结构
算法的描述和分析
算法是任意一个良定义的计算过程 以一个或多个值输入 并产生一个或多个值输出 是用来解决一个计算问题的工具
问题的输入实例是满足问题陈述中所给出的限制 为计算该问题的解所需要的所有输入构成
评价算法的好坏是 )算法是正确的; )要考虑算法所耗的时间 存储空间(辅助存储) 易于理解 编码 调试
算法所耗时间是每条语句执行时间之和 每条语句的执行时间是该语句执行次数与执行时间的乘积
算法求解问题的输入量称问题的规模 算法的时间复杂度T(n)是该算法的时间耗费 是求解问题规模n的函数 当问题规模趋向无穷大时 把T(n)的数量阶称算法的渐进时间复杂度 记为O(n)
常见的时间复杂度排列为 常数阶 对数阶 线性阶 线性对数阶 平方阶 立方阶 K次方阶 指数阶
算法的空间复杂度S(n)是该算法的空间耗费 是求解问题规模n的函数 算法的渐进空间复杂度简称空间复杂度
算法的时间复杂度和空间复杂度合称算法的复杂度
附结二:
第一章 概 论
*************************************************************************************
数据就是指能够被计算机识别 存储和加工处理的信息的载体
数据元素是数据的基本单位 可以由若干个数据项组成 数据项是具有独立含义的最小标识单位
*************************************************************************************
数据结构的定义 ·逻辑结构 从逻辑结构上描述数据 独立于计算机 ·线性结构 一对一关系
·线性结构 多对多关系
·存储结构 是逻辑结构用计算机语言的实现 ·顺序存储结构 如数组
·链式存储结构 如链表
·索引存储结构 ·稠密索引 每个结点都有索引项
·稀疏索引 每组结点都有索引项
·散列存储结构 如散列表
·数据运算 ·对数据的操作 定义在逻辑结构上 每种逻辑结构都有一个运算集合
·常用的有 检索 插入 删除 更新 排序
*************************************************************************************
数据类型 是一个值的集合以及在这些值上定义的一组操作的总称 ·原子类型 由语言提供
·结构类型 由用户借助于描述机制定义 是导出类型
抽象数据类型ADT ·是抽象数据的组织和与之的操作 相当于在概念层上描述问题
·优点是将数据和操作封装在一起实现了信息隐藏
*************************************************************************************
程序设计的实质是对实际问题选择一种好的数据结构 设计一个好的算法 算法取决于数据结构
*************************************************************************************
算法是一个良定义的计算过程 以一个或多个值输入 并以一个或多个值输出
评价算法的好坏的因素 ·算法是正确的;
·执行算法的时间;
·执行算法的存储空间(主要是辅助存储空间);
·算法易于理解 编码 调试
*************************************************************************************
时间复杂度 是某个算法的时间耗费 它是该算法所求解问题规模n的函数
渐近时间复杂度 是指当问题规模趋向无穷大时 该算法时间复杂度的数量级
评价一个算法的时间性能时 主要标准就是算法的渐近时间复杂度
算法中语句的频度不仅与问题规模有关 还与输入实例中各元素的取值相关
时间复杂度按数量级递增排列依次为 常数阶O( ) 对数阶O(log n) 线性阶O(n) 线性对数阶O(nlog n) 平方阶O(n^ ) 立方阶O(n^ ) ……k次方阶O(n^k) 指数阶O( ^n)
空间复杂度 是某个算法的空间耗费 它是该算法所求解问题规模n的函数
cha138/Article/program/sjjg/201311/23758相关参考
structnode intyearmonthday;; typedefstruct intnum;//帐号 charname[];//姓名 structnodedate;//开户年月日
PROCEDURE A(hg:pointer); (hg分别为单循环链表(singlelinked circularlist)中两个结点指针) PROCEDURE 
.数据结构中评价算法的两个重要指标是 【北京理工大学七(分)】 数据结构是研讨数据的()
.从逻辑上可以把数据结构分为( )两大类【武汉交通科技大学一(分)】 A.动态结构静态结构  
.以下数据结构中( )是非线性数据结构【中山大学一】 A.树 B.字符串&nb
.第一层FOR循环判断n+次往下执行n次第二层FOR执行次数为(n+(n)+(n)+…+)第三层循环体受第一层循环和第二层循环的控制其执行次数如下表 i= &n
.算法的时间复杂度和空间复杂度 .()逻辑结构()物理结构()操作(运算)()算法 .()有穷性 ()确定性()可行性 .()n+ ()n ()n(n+)/&n
.一个算法应该是( )【中山大学二(分)】 A.程序 B.问题求解步骤的描述 &
记录是数据处理的最小单位( )【上海海运学院一(分)】 数据的逻辑结构是指数据的各数据项之间的逻辑关系( )【北京邮电大学一(分)】 .
回答问题(每题分)【山东工业大学一(分)】 ()在数据结构课程中数据的逻辑结构数据的存储结构及数据的运算之间存在着怎样的关系? ()若逻辑结构相同但存储结构不同则为不同的数据结构这样的说法对吗