数据结构-线性表

运算受限的线性表

<h1>数组</h1>

数组是线性表的一种推广。

二维数组a[m][n],每个元素占k个存储单元,以行序为主序的存储中,a[i][j]的位置=i*n+j,存储地址loc[i,j]=loc[0,0]+(i*n+j)*k。

<h1>矩阵的压缩存储</h1>

对称矩阵:满足n阶方阵中a[i,j]=a[j,i],以行为主序存储下三角中的元素,a[i,j]的位置K:

当i&gt;=j,即下三角中的元素,k=i(i+1)/2+j;

当i&lt;j,即上三角中的元素,k=j(j+1)/2+i;

三角矩阵:上三角或下三角全为固定值。

上三角矩阵中前i行的元素个数=i(2n-i+1)/2。a[i,j]的位置K:

当i&lt;=j,即上三角中的元素,k=i(2n-i+1)/2+j-i;

当i&gt;j,即下三角中的元素,k=n(n+1)/2;

下三角矩阵中a[i,j]的位置K:

当i&gt;=j,即下三角中的元素,k=i(i+1)/2+j;

当i&lt;j,即上三角中的元素,k=n(n+1)/2;

相关推荐
NineData2 天前
数据库管理工具NineData,一年进化成为数万+开发者的首选数据库工具?
运维·数据结构·数据库
琢磨先生David9 天前
Day1:基础入门·两数之和(LeetCode 1)
数据结构·算法·leetcode
qq_454245039 天前
基于组件与行为的树状节点系统
数据结构·c#
超级大福宝9 天前
N皇后问题:经典回溯算法的一些分析
数据结构·c++·算法·leetcode
岛雨QA10 天前
常用十种算法「Java数据结构与算法学习笔记13」
数据结构·算法
weiabc10 天前
printf(“%lf“, ys) 和 cout << ys 输出的浮点数格式存在细微差异
数据结构·c++·算法
wefg110 天前
【算法】单调栈和单调队列
数据结构·算法
岛雨QA10 天前
图「Java数据结构与算法学习笔记12」
数据结构·算法
czxyvX10 天前
020-C++之unordered容器
数据结构·c++
岛雨QA10 天前
多路查找树「Java数据结构与算法学习笔记11」
数据结构·算法