多維數組和廣義表是一種復雜的非線性結構
多維數組
一維數組(向量)是存儲於計算機的連續存儲空間中的多個具有統一類型的數據元素
同一數組的不同元素通過不同的下標標識
(a
二維數組Amn可視為由m個行向量組成的向量
二維數組中的每個元素aij既屬於第i行的行向量
三維數組Amnp可視為以二維數組為數據元素的向量
三維數組中的每個元素aijk都屬於三個向量
由於計算機內存是一維的
數組一般不做插入和刪除操作
(
將數組元素按行向量排列
【例】二維數組Amn的按行優先存儲的線性序列為
a
注意
①PASCAL和C語言中
②行優先順序推廣到多維數組
(
將數組元素按列向量排列
【例】二維數組Amn的按列優先存儲的線性序列為
a
注意
①FORTRAN語言中
②列優先順序推廣到多維數組
(
LOC(aij)=LOC(a
其中
①LOC(a
②d為每個元素所占的存儲單元數
③由地址計算公式可得
(
LOC(aij)=LOC(a
(
LOC(aijk)=LOC(a
(
①二維數組A[c
LOC(aij)=LOC(ac
②下界為
LOC(aij)=LOC(a
注意
以下討論的數組存儲結構都以C語言下標表示
From:http://tw.wingwit.com/Article/program/sjjg/201311/22594.html