資料結構 8 陣列矩陣和廣義表

2021-10-10 10:28:42 字數 982 閱讀 6915

陣列:具有相同型別的資料元素的集合 

一維陣列不說了,二維陣列——套娃陣列[行]

[列]體會一下

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...