【软考】【数据结构】数组、矩阵和广义表

本文介绍了数据结构中的数组、矩阵和广义表。详细讲解了数组的一维和二维存储地址计算,特别是二维数组的行主序和列主序存储方式。接着探讨了稀疏矩阵的概念,提供了上三角和下三角矩阵元素对应一维数组下标的计算方法。最后,解释了广义表的定义,包括长度、深度的概念,以及取表头、表尾和取字母的操作。
摘要由CSDN通过智能技术生成

1.数组

数组是定长线性表在维数上的扩张,即线性表中的元素又是一个线性表。

1.1 数组的存储地址

一维数组a[n],a[i]的存储地址为:a+ilen
  二维数组a[m][n],a[i][j]按行存储:a+(i
n+j)len
  二维数组a[m][n],a[i][j]按列存储:a+(j
m+i)len
  **例:**已知5行5列的二维数组a中的各元素占两个字节,元素a[2][3]按行有限存储的存储地址为:a+(2
5+3)*2

2.矩阵

2.1稀疏矩阵

稀疏矩阵:一个矩阵中大量的元素为0,只需存储数组的一部分内容即可完成对整个数组的存储。
  计算某元素对应一维数组的下标:
这里写图片描述
  上三角矩阵(2n-i+1)*i/2+j
  下三角矩阵(i+1)*i/2+j
  应考技巧:特殊值代入法
这里写图片描述
i=0,j=0时M=1,i=1,j=1时M

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值