數(shù)據(jù)結(jié)構(gòu)與算法(C++版)課件第四章多維數(shù)組和廣義表.pptx
《數(shù)據(jù)結(jié)構(gòu)與算法(C++版)課件第四章多維數(shù)組和廣義表.pptx》由會(huì)員分享,可在線閱讀,更多相關(guān)《數(shù)據(jù)結(jié)構(gòu)與算法(C++版)課件第四章多維數(shù)組和廣義表.pptx(47頁珍藏版)》請(qǐng)?jiān)趨R文網(wǎng)上搜索。
1、第四章-多維數(shù)組與廣義表數(shù)據(jù)結(jié)構(gòu)與算法(C語言版)線性結(jié)構(gòu)非線性結(jié)構(gòu)前幾章介紹的數(shù)據(jù)結(jié)構(gòu)都是線性結(jié)構(gòu),數(shù)據(jù)元素都屬于原子類型,其值不分解使用。本章討論的多維數(shù)組和廣義表是線性結(jié)構(gòu)的推廣,從整體上看它們是多個(gè)元素組成的線性表,而從局部上看線性表中的數(shù)據(jù)元素不一定是原子類型,即數(shù)據(jù)元素又可以具有某種數(shù)據(jù)結(jié)構(gòu)。學(xué)習(xí)導(dǎo)引41 多維數(shù)組42 矩陣的壓縮存儲(chǔ)421 特殊矩陣422 稀疏矩陣43 廣義表431 廣義表的定義432 廣義表的運(yùn)算l理解二維數(shù)組的邏輯結(jié)構(gòu)特征,掌握二維數(shù)組的順序存儲(chǔ)地址公式。l理解特殊矩陣的壓縮存儲(chǔ)方式,掌握根據(jù)下標(biāo)計(jì)算存儲(chǔ)地址的方法。l了解稀疏矩陣的表示及存儲(chǔ)方法。l理解廣義表
2、的定義、分類及運(yùn)算。3主要內(nèi)容目標(biāo)一、多維數(shù)組的定義及存儲(chǔ)1.多維數(shù)組的邏輯結(jié)構(gòu)特征?數(shù)組中的元素具有相同類型,且下標(biāo)一般具有固定的上界和下界。數(shù)組可以是一維的,也可以是多維的。下面以二維數(shù)組為例來分析。二維數(shù)組可以看成是由多個(gè)一維數(shù)組組成的。二維數(shù)組Amn既可看成由m個(gè)行向量組成的線性表,也可看成是由n個(gè)列向量組成的線性表。二維數(shù)組的邏輯結(jié)構(gòu)具有如下特征:a00為開始結(jié)點(diǎn),它沒有直接前趨;am-1,n-1為終端結(jié)點(diǎn),它沒有直接后繼;結(jié)點(diǎn)a0,n-1和am-1,0都有一個(gè)直接前趨和一個(gè)直接后繼;除以上四個(gè)結(jié)點(diǎn)外,第一行和第一列的元素都有一個(gè)直接前趨和兩個(gè)直接后繼,最后一行和最后一列的元素都有兩
3、個(gè)直接前趨和一個(gè)直接后繼;其余的非邊界元素aij同時(shí)處于第i+1行的行向量中和第j+1列的列向量中,都有兩個(gè)直接前趨和兩個(gè)直接后繼。2.多維數(shù)組的存儲(chǔ)以二維數(shù)組為例:二維數(shù)組一般采用順序存儲(chǔ),因?yàn)樵貍€(gè)數(shù)固定,不插入刪除。思考問題?如何讓非線性的二維數(shù)組保存在線性的內(nèi)存中?數(shù)據(jù)的排列原則方法:(1)先排列成線性序列;(2)再依次存放到內(nèi)存中。排列方法:行優(yōu)先和列優(yōu)先 (1)行優(yōu)先原則:一行一行排列。(2)列優(yōu)先原則:一列一列排列。問題:C語言的數(shù)組屬于哪種排列?行優(yōu)先存儲(chǔ)二維數(shù)組若二維數(shù)組Amn按行優(yōu)先原則排列,其線性序列為:a00,a01,a0,n-1,a10,a11,a1,n-1,am-1
4、,n-1存儲(chǔ)后的內(nèi)存狀態(tài)如圖所示:aij的地址為:LOC(aij)=LOC(a00)+(in+j)d 特點(diǎn):隨機(jī)存取。列優(yōu)先存儲(chǔ)二維數(shù)組若二維數(shù)組Amn按列優(yōu)先原則排列,則線性序列為:a00,a10,am-1,0,a01,a11,am-1,1,am-1,n-1存儲(chǔ)后的內(nèi)存狀態(tài)如圖所示:aij的地址為:LOC(aij)=LOC(a00)+(jm+i)d 二維數(shù)組的推廣二維數(shù)組的邏輯特征可以推廣到多維數(shù)組。三維數(shù)組中元素最多有三個(gè)前趨、三個(gè)后繼二維數(shù)組的存儲(chǔ)方法可以推廣到多維數(shù)組。行優(yōu)先或列優(yōu)先排列,然后依次存儲(chǔ)。二、矩陣的壓縮存儲(chǔ)工程中的矩陣(二維數(shù)組)往往階數(shù)較大;而有效數(shù)據(jù)(非零元素)很少;
5、且分布沒有規(guī)律;直接存儲(chǔ)浪費(fèi)大壓縮存儲(chǔ)。壓縮存儲(chǔ)方法壓縮方法:只存儲(chǔ)非零元素,對(duì)零元素不分配空間;為多個(gè)相同的非零元素分配一個(gè)存儲(chǔ)空間。分別討論特殊矩陣和稀疏矩陣的壓縮存儲(chǔ)。1.特殊矩陣特殊矩陣是指非零元素或零元素分布有一定規(guī)律的矩陣,可以根據(jù)規(guī)律來壓縮存儲(chǔ)。(1)對(duì)稱矩陣(重點(diǎn)*)(2)三角矩陣(上三角陣和下三角陣)(3)對(duì)角矩陣不同的特殊矩陣中元素的分布規(guī)律不同,壓縮存儲(chǔ)的方法也不同。(1)對(duì)稱矩陣滿足aij=aji(1i,jn)的n階方陣稱為對(duì)稱矩陣。壓縮存儲(chǔ)方法:對(duì)稱矩陣中的數(shù)據(jù)元素按主對(duì)角線對(duì)稱,只需存儲(chǔ)下三角或上三角中的元素即可(重復(fù)元素只分配一個(gè)單元)。對(duì)稱矩陣對(duì)于上三角或下三角
6、中的元素可按行優(yōu)先或列優(yōu)先存儲(chǔ)。由此可得四種存儲(chǔ)方法:行優(yōu)先順序存儲(chǔ)下三角 列優(yōu)先順序存儲(chǔ)下三角 行優(yōu)先順序存儲(chǔ)上三角 列優(yōu)先順序存儲(chǔ)上三角。aij可以通過公式計(jì)算出來:隨機(jī)存取。重點(diǎn):地址公式的推導(dǎo)。(1)行優(yōu)先順序存儲(chǔ)下三角 (a)n階對(duì)稱矩陣 (b)行優(yōu)先順序存儲(chǔ)下三角(c)對(duì)應(yīng)的一維數(shù)組思考?(1)數(shù)組的大小?:n(n+1)/2(2)對(duì)應(yīng)關(guān)系是什么?元素aij 存儲(chǔ)在sa數(shù)組中的哪里?(3)下標(biāo)k與i、j之間的關(guān)系:k=i(i+1)/2+j(4)上三角的aij怎么處理?答:上三角與下三角對(duì)應(yīng),例如a58=a85,若求上三角元素的值,那么將下標(biāo)交換求地址。其他三種方法的下標(biāo)計(jì)算公式(學(xué)會(huì)
7、推導(dǎo))(2)列優(yōu)先順序存儲(chǔ)下三角(3)行優(yōu)先順序存儲(chǔ)上三角(4)列優(yōu)先順序存儲(chǔ)上三角 (2)三角矩陣包括上三角陣和下三角陣兩種。上三角陣的主對(duì)角線以下(不包括對(duì)角線)元素均為常數(shù)C,通常為0。圖中為上三角陣。如何壓縮存儲(chǔ)?跟對(duì)稱陣有什么區(qū)別與聯(lián)系?三角矩陣壓縮方法:相同元素只分配一個(gè)存儲(chǔ)單元。上三角矩陣壓縮存儲(chǔ):上三角沒規(guī)律,依次存儲(chǔ),行優(yōu)先或列優(yōu)先。常數(shù)C=0,不分配空間;C0分配一個(gè)單元。則若C0,圖中的上三角陣定義一個(gè)長度n(n+1)/2+1的數(shù)組,最后一個(gè)單元存儲(chǔ)常數(shù)C。上三角矩陣地址公式 若上三角陣以行優(yōu)先順序存儲(chǔ),則地址公式為:若上三角陣以列優(yōu)先順序存儲(chǔ),地址公式會(huì)推導(dǎo)。下三角陣的
- 1.請(qǐng)仔細(xì)閱讀文檔,確保文檔完整性,對(duì)于不預(yù)覽、不比對(duì)內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會(huì)出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請(qǐng)點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
10 積分
下載 | 加入VIP,下載共享資源 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對(duì)作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 數(shù)據(jù)結(jié)構(gòu)與算法C+版課件第四章 多維數(shù)組和廣義表 數(shù)據(jù)結(jié)構(gòu) 算法 C+ 課件 第四 多維 數(shù)組 廣義
鏈接地址:http://zhizhaikeji.com/p-43815983.html