数据结构__基本概念和算法评价

数据结构的基本概念与算法评价

数据结构组成
数据对象是具有相同性质的数据元素的集合,是数据的子集。
数据元素是数据的基本单位。
数据项是构成数据元素的不可分割的最小单位。

数据类型

数据类型是一个值的集合和定义在此集合上一组操作的总称。

  • 原子类型:其值不可再分的数据类型。
  • 结构类型:其值可以再分解为若干成分(分量)的数据类型。
  • 抽象数据类型:抽象数据组织和与之相关的操作。通常用(数据对象、数据关系、基本操作集)这样的三元组来表示抽象数据类型。

数据结构 = 数据的逻辑结构 + 存储结构 + 运算
(运算的定义针对于逻辑结构,运算的实现针对于物理结构)

数据的逻辑结构

数据的存储结构
  • 顺序存储: 把逻辑上相邻的元素存储在物理位置相邻的存储单元中,元素之间的关系由存储单元的邻接关系来体现。优点: 可以实现随机存取,每个元素占最少的存储空间;缺点: 只能使用相邻的一整块存储单元,因此可以产生较多的外部碎片。
  • 链式存储: 不要求逻辑上相邻的元素在物理位置上也相邻,借助只是元素存储地址的指针表示元素之间的逻辑关系。优点: 不会出现碎片现象,充分利用所有的存储单元;缺点: 每个元素因存储指针而占用额外的存储空间,并且只能实现顺序存取。
  • 索引存储: 在存储元素信息的同时,还建立普加的索引表。索引表中的每一项成为索引项,索引项的一般形式为:(关键字,地址)。优点: 检索速度快;缺点: 增加了附加的索引表,会占用较多存储空间,增删数据花费时间长。
  • 散列存储: 根据元素的关键字直接计算出该元素的存储地址,又称为Hash存储。优点: 检索、增删结点操作都很快;缺点: 散列函数不好可能出现元素存储单元的冲突,而解决冲突会增加时间和空间的开销。

算法评价:算法评价

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值