陣列:具有相同型別的資料元素的集合
一維陣列不說了,二維陣列——套娃陣列[行]
[列]體會一下
typedef
int arra1[n]
typedef array1 array2[m]
陣列特點:結構固定——維度和維界不變,沒有那些亂七八糟的操作
一般採取順序儲存結構來表示陣列
感覺還是比較簡單的
假設有乙個二維陣列a[m]
[n]按行優先順序儲存,a[0]
[0]存放位置在644(10),a[2
][2]存放在位置676(10),每個元素佔乙個空間,問a[3]
[3](10)存放在什麼位置?
//(10)表示用十進位制表示 a[2
][2]前面總共有(2n+
2)個元素
loc(2,2) = loc(0,0)+
2* n +2=
644+
2* n +2=
676
n =15
矩陣、廣義表建議看書
對稱矩陣n*n
只儲存上(下)三角包括對角線上的元素,共(1
+n)n/
2三角矩陣
對角線以上或以下的資料元素,不包括對角線全部為constant
稀疏矩陣
就是資料較少的矩陣,用三元組、十字鍊錶
廣義表:每乙個元素可以是原子,也可以是乙個廣義表(遞迴)
ls = (a1,a2,……,an)
表頭:若ls非空,則第乙個元素就是表頭(可以是原子或廣義表)
表尾:除了表頭之外的其他元素組成的表表表表表
長度:最外層所包含的元素個數
深度:站卡課後所含的括號重數(原子0,空表1)
資料結構 陣列 矩陣 和廣義表
陣列的儲存結構 一維陣列 多維陣列都是存放在乙個按行優先 也可以按列優先 的一維長陣列中。對稱矩陣中的元素是按主對角線對稱的,即上三角部分和下三角部分元素是對應相等的。在儲存時,一般儲存主對角線元素以及下三角部分元素,按行優先。n階對稱矩陣a可以儲存在一維陣列b 0.n n 1 2 1 一共需儲存n...
資料結構 陣列 矩陣 廣義表儲存
陣列的定義 陣列是下標index 和值value 組成的序對的集合。在陣列中,每個有定義的下標都與乙個值對應,這個值稱做陣列元素。每個序對形如 index,value 由於計算機的記憶體結構是一維的,因此用一維記憶體來表示多維陣列,就必須按某種次序將陣列元素排成一列序列,然後將這個線性序列存放在儲存...
資料結構 陣列和廣義表
感覺陣列這一段沒講什麼太多的東西。先是講了下定義,就是每個維度上都有對應的前驅後繼,首尾元素例外。操作只有初始化 銷毀 取元素 修改元素。然後講了下適合用順序儲存結構,多維情況下根據下標 j1 j2 j3 jn 找到對應畫素的儲存位置 cn l,ci 1 bi ci,loc loc基址 ciji l...