当前位置: 首页 > article >正文

软考中级-数据库-3.2 数据结构-数组和矩阵

 

数组

  • 一维数组是长度固定的线性表,数组中的每个数据元素类型相同。n维数组是定长线性表在维数上的扩张,即线性表中的元素又是一个线性表。

例如一维数组a[5]=[a1,a2,a3,a4,a5]

二维数组a[2][3]是一个2行2列的数组

第一行[a11,a12,a13]

第二行[a21,a22,a23]

  • 由于数组一般不做插入和删除,且元素个数和元素之间的关系不再发生变动,那么数组适合采用顺序存储结构
  • 数组元素的存储方式及相关计算:

二维数组的存储结构可分为以行为主序(按行存储)和以列为主序(按列存储)两种方法。

  • 设每个数据元素占用L个单元,m、n为数组的行数和列数,那么:以行为主序优先存储的地址计算公式为:   

以列为主序优先存储的地址计算公式为:

矩阵

  • 这里主要讨论一些特殊矩阵的压缩存储的问题。
  • 对多个值相同的元素可以只分配一个存储单元,零元素不分配存储单元。

下面主要讨论对称矩阵、三对角矩阵、稀疏矩阵

(1)对称矩阵

(2)三对角矩阵

  • 对角矩阵是指矩阵中的非零元素都集中在以主对角线为中心的带状区域中,其余的矩阵元素都为零。
  • 下面主要考虑三对角矩阵,即只有主对角线及其左右两边为非零元素

 

(3)稀疏矩阵

  • 在一个矩阵中,若非零元素的个数远远少于零元素的个数,且非零元素的分布没有规律,则称之为稀疏矩阵。


http://www.kler.cn/a/572032.html

相关文章:

  • 安当全栈式PostgreSQL数据库安全解决方案:透明加密、动态凭据与勒索防护一体化实践
  • 制造业中的“大数据”:如何实现精准决策?
  • 重生之我在异世界学编程之C语言:深入预处理篇(上)
  • 千峰React:案例二
  • 【每日学点HarmonyOS Next知识】getContext问题、清除Web缓存、弹层的点击事件透传、去除间隙、侧滑菜单设置
  • 【C++】为什么C++的构造函数不能为虚函数,折钩函数可以为虚函数
  • ChatVLA:基于视觉-语言-动作模型的统一多模态理解与机器人控制
  • python和pycharm安装教程
  • 云服数据存储接口:CloudSever
  • JavaEE_多线程(一)
  • C++中的无锁编程
  • Python Cookbook-3.1 计算昨天和明天的日期
  • 详细分析KeepAlive的基本知识 并缓存路由(附Demo)
  • JavaWeb基础专项复习6(2)——AJAX补充
  • [leetcode]704.二分查找-简单
  • 【Canny 边缘检测详细讲解】
  • 【ORACLE】ORACLE19C在19.13版本前的一个严重BUG-24761824
  • 统计URL出现层级及次数
  • 2025-03-04 学习记录--C/C++-C语言 判断是否是素数
  • C# .NETCore ZipArchive 处理大容量文件导致内存占用高的问题