演算法與資料結構之陣列和廣義表

2021-10-24 22:36:17 字數 889 閱讀 5470

1. 陣列採用的是順序儲存方式

2. 稀疏矩陣是指非零元素很少(非零元素遠少於矩陣總容量)同時它們的分布沒有規律

3. 對矩陣壓縮是為了節省資料儲存所需的物理儲存空間

4. 上三角矩陣壓縮的下標對應關係在上三角矩陣中,主對角線上第r(1≤r≤n)行由n-r+1個元素,a[i][j]所在的行的元素數是j-i+1。所以,按行序儲存的元素在一維陣列的下標k和二維陣列下標的關係:k=(i-1)(2n-i)/2+j。(i≤j)

5. 廣義表的表尾是指除第乙個元素之外其餘元素組成的表,如廣義表a(a,b,c,d)的表尾是(b,c,d)

6. 廣義表簡稱表,是由零個或多個原子或子表組成的有限序列,原子與表的差別僅在於①原子是結構上不可再分的(單元素),可以是乙個數或乙個結構表的結構本質就是廣義表,因作為廣義表的元素故稱為子表。為了區分原子和表,一般用大寫字母表示表,用小寫字母表示原子。乙個表的長度是指表中元素的個數,而表的深度是指表展開後所含括號的層數

7. 廣義表((),(a),(b,(c,d),f))的深度為3。廣義表(a,(a,b),d,e,((i,j),k))的長度為5。

8. 廣義表a(b,a)的長度為2,深度為1。

9. 廣義表l=((),()),則head(l)是();tail(l)是(());l的長度是2;深度是2。

待續...

資料結構 陣列和廣義表

感覺陣列這一段沒講什麼太多的東西。先是講了下定義,就是每個維度上都有對應的前驅後繼,首尾元素例外。操作只有初始化 銷毀 取元素 修改元素。然後講了下適合用順序儲存結構,多維情況下根據下標 j1 j2 j3 jn 找到對應畫素的儲存位置 cn l,ci 1 bi ci,loc loc基址 ciji l...

資料結構 陣列和廣義表

陣列長度固定,元素型別一致,沒有鏈式映像,因為不能保證位址連續 陣列與線性表的區別與聯絡 相同點 都是相同資料型別的的資料元素組成的有限序列 不同點 陣列要求位址連續,而線性表則無此要求 線性表的元素是邏輯意義上不可再分的,而陣列中每乙個元素還可以是乙個陣列 多維陣列可分 操作上的不同,陣列一旦被定...

資料結構 陣列和廣義表

例 設有一 個二維陣列a m n 按行優先順序儲存,假設a 0 0 存 放位置在644 10 a 2 2 存放位置在676 10 每個元素佔乙個空間,問a 3 3 10 存放在什麼位置?腳注10表示用10進製表示。設陣列元素a i j 存放在起始位址為loc i,j 的儲存單元中 loc 2,2 l...