数据结构课上笔记9

数组:按一定格式排列起来的具有相同类型的数据元素的集合。

 

二维数组:若一维数组中的数据元素又是一维数组结构,则称为二维数组。 

同理,推广到多维数组。若 n -1 维数组中的元素又是一个一维数组结构,则称作 n 维数组。 

声明格式:数据类型   变量名称[行数] [列数] ;

 

实现:一般都是采用顺序存储结构来表示数组。

 

二维数组两种顺序存储方式:以行序为主序 (低下标优先) 、以列序为主序 (高下标优先)

一个二维数组 A,行下标的范围是 1 到 6,列下标的范围是 0 到 7,每个数组元素用相邻的6 个字节存储,存储器按字节编址。那么,这个数组的体积是288个字节。

 

 广义表(又称列表 Lists)是n≥0个元素 a1, a2, …, an 的有限序列,其中每一个ai 或者是原子,或者是一个子表。

 

表头:若 LS 非空 (n≥1 ),则其第一个元素 a1 就是表头。

 表尾:除表头之外的其它元素组成的表。记作  tail(LS) = (a2, ..., an)。 

 

(( )) 长度为 1,表头、表尾均为 ( )

(a, (b, c))长度为 2,由原子 a 和子表 (b, c) 构成。表头为 a ;表尾为 ((b, c))。

 

广义表的长度定义为最外层所包含元素的个数

广义表的深度定义为该广义表展开后所含括号的重数。

“原子”的深度为 0 ;  “空表”的深度为 1 。

 

取表头运算 GetHead  和取表尾运算 GetTail

GetHead(LS) = a1        GetTail(LS) = (a2, …, an)。

 

广义表可看成是线性表的推广,线性表是广义表的特例。

 

广义表的结构相当灵活,在某种前提下,它可以兼容线 性表、数组、树和有向图等各种常用的数据结构。

由于广义表不仅集中了线性表、数组、树和有向图等常 见数据结构的特点,而且可有效地利用存储空间,因此在计算机的许多应用领域都有成功使用广义表的实例。 

 

  • 133
    点赞
  • 206
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 22
    评论
评论 22
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

兔老大RabbitMQ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值