【数据结构笔记持续更新(第四章)】

数据结构笔记持续更新(第四章)

第四章 数组和广义表

数组的定义:数组 是我们熟悉的数据类型,数组 中各元素具有统一的类型,并且数组元素下标一般具有固定的上界下界,因此,数组的处理比其它复杂的结构更为简单。
任何数组A都可以看作一个线性表。数组维数确定后,数据元素个数元素之间的关系不再发生改变,适合顺序存储

数组的基本操作:

在这里插入图片描述

数组的顺序表示和实现:

行优先顺序:

在这里插入图片描述

列优先顺序:

在这里插入图片描述

矩阵的压缩存储
有些特殊矩阵,非零元素呈某种规律分布或者矩阵中出现大量的零元素的情况下,会占用许多单元去存储重复的非零元素零元素,这对高阶矩阵会造成极大的浪费,为了节省存储空间,对这类矩阵进行压缩存储——即为多个相同的非零元素只分配一个存储空间;对零元素不分配空间。
特殊矩阵:所谓特殊矩阵是指非零元素或零元素的分布有一定规律的矩阵,如对称矩阵三角矩阵对角矩阵等等。

在这里插入图片描述

对称矩阵

在这里插入图片描述

对称矩阵中元素关于主对角线对称,故只要存储矩阵中上三角下三角中的元素,让每两个对称的元素共享一个存储空间,这样能节约近一半的存储空间。
n2 个元素可以压缩到 n(n+1)/2个空间中。

在这里插入图片描述

在这里插入图片描述

三角矩阵

主对角线划分,三角矩阵有上三角下三角两种。上三角矩阵它的下三角中的元素均为常数。下三角矩阵正好相反,它的主对角线上方均为常数。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

稀疏矩阵

在这里插入图片描述

除了记录非零元素的值之外,还必须同时几下它所在的的位置。稀疏矩阵的存储方法一般有三种:三元组法行逻辑连接顺序表十字链表法

在这里插入图片描述

广义表:是由零个多个原子或子表组成的优先序列,是线性表的推广。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

广义表的存储结构
广义表中的数据元素可以具有不同的结构,因此,难以用顺序存储结构表示,通常采用 链式存储结构,每个数据元素可用一个节点表示。由于广义表中有两种数据元素,因此需要有两种结构的节点——一种是表结点,一种是原子结点
表结点由三个域组成:标志域指示表头的指针的指针域指示表尾指针域;而 原子域 只需两个域:标志域值域

在这里插入图片描述

在这里插入图片描述

表结点由三个域组成:标志域、指示表头的指针域和指向下一个元素的指针;原子结点的三个域为:标志域值域和指向下一个元素的指针

在这里插入图片描述

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值