計(jì)算機(jī)二級(jí)數(shù)據(jù)結(jié)構(gòu)與算法_第1頁(yè)
計(jì)算機(jī)二級(jí)數(shù)據(jù)結(jié)構(gòu)與算法_第2頁(yè)
計(jì)算機(jī)二級(jí)數(shù)據(jù)結(jié)構(gòu)與算法_第3頁(yè)
計(jì)算機(jī)二級(jí)數(shù)據(jù)結(jié)構(gòu)與算法_第4頁(yè)
計(jì)算機(jī)二級(jí)數(shù)據(jù)結(jié)構(gòu)與算法_第5頁(yè)
已閱讀5頁(yè),還剩62頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

關(guān)于計(jì)算機(jī)二級(jí)數(shù)據(jù)結(jié)構(gòu)與算法第一頁(yè),共六十七頁(yè),2022年,8月28日1.基本數(shù)據(jù)結(jié)構(gòu)與算法第二頁(yè),共六十七頁(yè),2022年,8月28日21.1算法1.1.1算法(algorithm)基本概念對(duì)特定問(wèn)題求解步驟的一種描述,它是指令的有限序列,其中每一條指令表示一個(gè)或多個(gè)操作。它是一組嚴(yán)謹(jǐn)?shù)囟x運(yùn)算順序的規(guī)則,并且每一個(gè)規(guī)則都是有效的,且是明確的,此順序?qū)⒃谟邢薜拇螖?shù)下終止。第三頁(yè),共六十七頁(yè),2022年,8月28日3算法的基本特征可行性確定性有窮性擁有足夠的情報(bào)輸入和輸出第四頁(yè),共六十七頁(yè),2022年,8月28日4算法的基本要素

1、對(duì)數(shù)據(jù)對(duì)象的運(yùn)算和操作算術(shù)運(yùn)算:加、減、乘、除等運(yùn)算邏輯運(yùn)算:“與”、“或”、“非”等運(yùn)算關(guān)系運(yùn)算:“大于”、“等于”等運(yùn)算數(shù)據(jù)傳輸:賦值、輸入、輸出等運(yùn)算第五頁(yè),共六十七頁(yè),2022年,8月28日5算法的基本要素

2、算法的控制結(jié)構(gòu)算法中各操作之間的執(zhí)行順序描述算法的工具通常有傳統(tǒng)流程圖、N-S結(jié)構(gòu)化流程圖、算法描述語(yǔ)言等一個(gè)算法一般可以用順序、選擇、循環(huán)三種基本機(jī)構(gòu)組合而成。第六頁(yè),共六十七頁(yè),2022年,8月28日6算法設(shè)計(jì)基本方法列舉法歸納法遞推遞歸(以簡(jiǎn)潔的形式設(shè)計(jì)和描述算法)減半遞推技術(shù)回溯法第七頁(yè),共六十七頁(yè),2022年,8月28日71.1.2算法復(fù)雜度時(shí)間復(fù)雜度是指執(zhí)行算法所需要的計(jì)算工作量。一般用算法在執(zhí)行過(guò)程中所需要的基本運(yùn)算的執(zhí)行次數(shù)來(lái)度量算法的工作量。算法中基本運(yùn)算執(zhí)行次數(shù)和問(wèn)題的規(guī)模有關(guān)。算法的工作量=f(n)

有時(shí)在固定規(guī)模下,基本運(yùn)算執(zhí)行次數(shù)還和具體輸入有關(guān)。第八頁(yè),共六十七頁(yè),2022年,8月28日8

平均性態(tài)最壞情況復(fù)雜性X出現(xiàn)的概率算法在輸入x時(shí)所執(zhí)行的基本運(yùn)算次數(shù)規(guī)模為n時(shí),算法執(zhí)行時(shí)所有可輸入的集合第九頁(yè),共六十七頁(yè),2022年,8月28日9算法的空間復(fù)雜度一般是指執(zhí)行這個(gè)算法所需要的內(nèi)存空間一個(gè)算法所占用的存儲(chǔ)空間包括算法程序所占的空間、輸入的初始數(shù)據(jù)所占的存儲(chǔ)空間以及某種數(shù)據(jù)結(jié)構(gòu)所需要的附加存儲(chǔ)空間一個(gè)上機(jī)執(zhí)行的程序除了需要存儲(chǔ)空間來(lái)寄存本身所用指令、常數(shù)、變量和輸入數(shù)據(jù)外,也需要一些對(duì)數(shù)據(jù)進(jìn)行操作的工作單元和存儲(chǔ)一些為實(shí)現(xiàn)計(jì)算所需信息的輔助空間。第十頁(yè),共六十七頁(yè),2022年,8月28日101.2數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)的定義數(shù)據(jù)的邏輯結(jié)構(gòu)和存儲(chǔ)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)的圖形表示線性結(jié)構(gòu)與非線性結(jié)構(gòu)第十一頁(yè),共六十七頁(yè),2022年,8月28日111.2.1數(shù)據(jù)結(jié)構(gòu)研究的主要內(nèi)容當(dāng)今計(jì)算機(jī)應(yīng)用的特點(diǎn):所處理的數(shù)據(jù)量大且具有一定的關(guān)系;對(duì)其操作不再是單純的數(shù)值計(jì)算,而更多地是需要對(duì)其進(jìn)行組織、管理和檢索。第十二頁(yè),共六十七頁(yè),2022年,8月28日12應(yīng)用舉例——學(xué)籍檔案管理

假設(shè)用計(jì)算機(jī)管理學(xué)生檔案,研究對(duì)象為:學(xué)生,常用操作查找、刪除、修改、插入等一個(gè)學(xué)籍檔案管理系統(tǒng)應(yīng)包含如下表1-1所示的學(xué)生信息。第十三頁(yè),共六十七頁(yè),2022年,8月28日13第十四頁(yè),共六十七頁(yè),2022年,8月28日14特點(diǎn):每個(gè)學(xué)生的信息占據(jù)一行,所有學(xué)生的信息按學(xué)號(hào)順序依次排列構(gòu)成一張表格。表中每個(gè)學(xué)生的信息依據(jù)學(xué)號(hào)的順序存在著一種前后關(guān)系,這就是我們所說(shuō)的線性結(jié)構(gòu)。對(duì)它的操作通常是插入某個(gè)學(xué)生的信息,刪除某個(gè)學(xué)生的信息,更新某個(gè)學(xué)生的信息,按條件檢索某個(gè)學(xué)生的信息等等。

第十五頁(yè),共六十七頁(yè),2022年,8月28日15

數(shù)據(jù)結(jié)構(gòu)是一門研究數(shù)據(jù)組織、存儲(chǔ)和運(yùn)算的一般方法的學(xué)科。1.2.2基本概念和術(shù)語(yǔ)數(shù)據(jù)結(jié)構(gòu)主要研究和討論以下三個(gè)方面的問(wèn)題:1.數(shù)據(jù)集合中各數(shù)據(jù)元素之間所固有的邏輯關(guān)系,即數(shù)據(jù)的邏輯結(jié)構(gòu)。2.在對(duì)數(shù)據(jù)進(jìn)行處理時(shí),各數(shù)據(jù)元素在計(jì)算機(jī)中的存儲(chǔ)關(guān)系,即數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)。3.對(duì)各種數(shù)據(jù)結(jié)構(gòu)進(jìn)行的運(yùn)算。位置:P6,重要。第十六頁(yè),共六十七頁(yè),2022年,8月28日16能輸入到計(jì)算機(jī)中并能被計(jì)算機(jī)程序處理的符號(hào)的集合。整數(shù)(1,2)、實(shí)數(shù)(1.1,1.2)字符串(Beijing)、圖形、聲音。1.2.2基本概念和術(shù)語(yǔ)

數(shù)據(jù)結(jié)構(gòu)是一門研究數(shù)據(jù)組織、存儲(chǔ)和運(yùn)算的一般方法的學(xué)科。第十七頁(yè),共六十七頁(yè),2022年,8月28日171.2.2基本概念和術(shù)語(yǔ)計(jì)算機(jī)管理圖書(shū)問(wèn)題在圖書(shū)館里有各種卡片:有按書(shū)名編排的、有按作者編排的、有按分類編排如何將查詢圖書(shū)的這些信息存入計(jì)算機(jī)中既要考慮查詢時(shí)間短,又要考慮節(jié)省空間

數(shù)據(jù)結(jié)構(gòu)是一門研究數(shù)據(jù)組織、存儲(chǔ)和運(yùn)算的一般方法的學(xué)科。第十八頁(yè),共六十七頁(yè),2022年,8月28日18最簡(jiǎn)單的辦法之一是建立一張表,每一本書(shū)的信息在表中占一行,如1.2.2基本概念和術(shù)語(yǔ)

數(shù)據(jù)結(jié)構(gòu)是一門研究數(shù)據(jù)組織、存儲(chǔ)和運(yùn)算的一般方法的學(xué)科。第十九頁(yè),共六十七頁(yè),2022年,8月28日19將各種邏輯結(jié)構(gòu)的數(shù)據(jù)存放在計(jì)算機(jī)存儲(chǔ)空間中。目的不同,最佳的存儲(chǔ)方方法就不同。

數(shù)據(jù)元素在計(jì)算機(jī)中的表示

數(shù)據(jù)結(jié)構(gòu)是一門研究數(shù)據(jù)組織、存儲(chǔ)和運(yùn)算的一般方法的學(xué)科。1.2.2基本概念和術(shù)語(yǔ)第二十頁(yè),共六十七頁(yè),2022年,8月28日20對(duì)數(shù)據(jù)結(jié)構(gòu)中的節(jié)點(diǎn)進(jìn)行操作處理(插入、刪除、修改、查找、排序)1.2.2基本概念和術(shù)語(yǔ)

數(shù)據(jù)結(jié)構(gòu)是一門研究數(shù)據(jù)組織、存儲(chǔ)和運(yùn)算的一般方法的學(xué)科。第二十一頁(yè),共六十七頁(yè),2022年,8月28日21數(shù)據(jù)元素(DataElement)

現(xiàn)實(shí)世界中客觀存在得一切個(gè)體或個(gè)體相關(guān)的操作都可以抽象為數(shù)據(jù)元素。如:四季的名稱:春、夏、秋、冬由季節(jié)抽象而來(lái),可以作為季節(jié)的數(shù)據(jù)元素。同理,父親、兒子、女兒可以作為家庭成員的數(shù)據(jù)元素。

簡(jiǎn)單的說(shuō),數(shù)據(jù)結(jié)構(gòu)是指相互有關(guān)聯(lián)的數(shù)據(jù)元素的集合。第二十二頁(yè),共六十七頁(yè),2022年,8月28日22數(shù)據(jù)元素(DataElement)

甚至客觀存在的事件,如演出、借書(shū)、比賽等也可以抽象為數(shù)據(jù)元素。在具有相同特征的數(shù)據(jù)元素集合中,各個(gè)數(shù)據(jù)元素之間存在某種關(guān)系,這種關(guān)系反映了該集合中的數(shù)據(jù)元素所固有的一種結(jié)構(gòu)。在數(shù)據(jù)處理領(lǐng)域中,通常把數(shù)據(jù)元素之間的這種固有的關(guān)系簡(jiǎn)單地用前后件關(guān)系來(lái)描述。第二十三頁(yè),共六十七頁(yè),2022年,8月28日23數(shù)據(jù)的邏輯結(jié)構(gòu)表示數(shù)據(jù)元素的信息表示數(shù)據(jù)元素之間的前后件關(guān)系。數(shù)據(jù)邏輯結(jié)構(gòu)通常用二元組表示數(shù)據(jù)邏輯結(jié)構(gòu)也可用圖形表示第二十四頁(yè),共六十七頁(yè),2022年,8月28日24數(shù)據(jù)邏輯結(jié)構(gòu)可表示為:B=(D,R)B表示數(shù)據(jù)結(jié)構(gòu)D表示數(shù)據(jù)元素的集合R表示數(shù)據(jù)元素間前后件關(guān)系為反映前后件關(guān)系,通常用二元組(a,b)來(lái)表示,它表示a是b的前件。第二十五頁(yè),共六十七頁(yè),2022年,8月28日25B=(D,R)D={父親,兒子,女兒}R={(父親,兒子),(父親,女兒)}B=(D,R)D={春,夏,秋,冬}R={(春,夏),(夏,秋),(秋,冬)}第二十六頁(yè),共六十七頁(yè),2022年,8月28日26數(shù)據(jù)結(jié)構(gòu)的圖形表示春夏秋冬一年四季數(shù)據(jù)結(jié)構(gòu)的圖形表示ABCD第二十七頁(yè),共六十七頁(yè),2022年,8月28日27數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)存儲(chǔ)空間的表示。各數(shù)據(jù)元素在計(jì)算機(jī)存儲(chǔ)空間中的位置與邏輯關(guān)系不一定相同。常用的存儲(chǔ)結(jié)構(gòu)有:順序、鏈接、索引等。第二十八頁(yè),共六十七頁(yè),2022年,8月28日28數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)....6427531....字節(jié)....6427531....冬夏秋春....6427531....兒子女兒4006父親第二十九頁(yè),共六十七頁(yè),2022年,8月28日29二級(jí)公共基礎(chǔ)05年4月試題(1)數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)是指

A)存儲(chǔ)在外存中的數(shù)據(jù)B)數(shù)據(jù)所占的存儲(chǔ)空間量C)數(shù)據(jù)在計(jì)算機(jī)中的順序存儲(chǔ)方式D)數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)中的表示第三十頁(yè),共六十七頁(yè),2022年,8月28日30線性結(jié)構(gòu)與非線性結(jié)構(gòu)有且只有一個(gè)根結(jié)點(diǎn)(沒(méi)有前件的結(jié)點(diǎn))。每一個(gè)結(jié)點(diǎn)最多只有一個(gè)前件,也最多只有一個(gè)后件。第三十一頁(yè),共六十七頁(yè),2022年,8月28日31線性結(jié)構(gòu)

A,B,C,·······,X,Y,Z學(xué)生成績(jī)表86胡孝臣986110395劉忠賞9861107100張卓9861109成績(jī)姓名學(xué)號(hào)線性表——結(jié)點(diǎn)間是以線性關(guān)系聯(lián)結(jié)ABC第三十二頁(yè),共六十七頁(yè),2022年,8月28日32非線性結(jié)構(gòu)

如果數(shù)據(jù)結(jié)構(gòu)不滿足線性結(jié)構(gòu)的條件,則稱之為非線性結(jié)構(gòu)。此外,在線線結(jié)構(gòu)中插入或刪除一個(gè)結(jié)點(diǎn),還應(yīng)是線線結(jié)構(gòu),否則此結(jié)構(gòu)非線線ABCD第三十三頁(yè),共六十七頁(yè),2022年,8月28日33樹(shù)形結(jié)構(gòu)全校學(xué)生檔案管理的組織方式計(jì)算機(jī)程序管理系統(tǒng)也是典型的樹(shù)形結(jié)構(gòu)第三十四頁(yè),共六十七頁(yè),2022年,8月28日34ABCDEFGH樹(shù)形結(jié)構(gòu)——結(jié)點(diǎn)間具有分層次的連接關(guān)系HBCDEFGA第三十五頁(yè),共六十七頁(yè),2022年,8月28日351.3線性表1.3.1線性表的定義線性表是n個(gè)元素的有限序列,它們之間的關(guān)系可以排成一個(gè)線性序列:

a1,a2,……,ai,……,an其中n稱作表的長(zhǎng)度,當(dāng)n=0時(shí),稱作空表。第三十六頁(yè),共六十七頁(yè),2022年,8月28日36線性表的特點(diǎn):1.線性表中所有元素的性質(zhì)相同。2.除第一個(gè)和最后一個(gè)數(shù)據(jù)元素之外,其它數(shù)據(jù)元素有且僅有一個(gè)前件和一個(gè)后件。第一個(gè)數(shù)據(jù)元素?zé)o前件,最后一個(gè)數(shù)據(jù)元素?zé)o后件。3.數(shù)據(jù)元素在表中的位置只取決于它自身的序號(hào)。在線性表上常用的運(yùn)算有:初始化、求長(zhǎng)度、取元素、修改、前插、刪除、檢索、排序。第三十七頁(yè),共六十七頁(yè),2022年,8月28日371.3.2線性表的順序存儲(chǔ)結(jié)構(gòu)線性表順序存儲(chǔ)結(jié)構(gòu)的特點(diǎn):

1、線性表所有元素所占的存儲(chǔ)空間是連續(xù)的。

2、線性表各數(shù)據(jù)元素在存儲(chǔ)空間中是按邏輯順序依次存放的。

在計(jì)算機(jī)中存放線性表,采用順序存儲(chǔ)是一種簡(jiǎn)單方便的方法。

第三十八頁(yè),共六十七頁(yè),2022年,8月28日38元素an……..元素ai……..元素a2元素a1bADR(a1)

+k存儲(chǔ)地址內(nèi)存狀態(tài)順序存儲(chǔ)結(jié)構(gòu)示意圖(順序表):首地址ADR(a1)每個(gè)元素所占用的存儲(chǔ)單元個(gè)數(shù)ADR(a1)

+(i-1)*

kADR(a1)

+(n-1)*

kADR(ai)=ADR(a1)

+(i-1)*

k第三十九頁(yè),共六十七頁(yè),2022年,8月28日39n-1線性表的插入和刪除運(yùn)算示意圖ai-1…..a2a1an…ai+1aixai-1…..a2a1

aiai+1…alength

an……ai+1aix刪除運(yùn)算插入運(yùn)算第四十頁(yè),共六十七頁(yè),2022年,8月28日40若長(zhǎng)度為n的線性表表示為:(a1,a2,…,ai,…an)運(yùn)算后表示為:(a’1,a’2,…,a’i,…a’n),則滿足以下關(guān)系:插入新元素b后a’jaj1<=j<=i-1b

j=iaj-1i+1<=j<=n+1長(zhǎng)度增加為:n+1刪除第i個(gè)元素后a’jaj1<=j<=i-1aj+1i<=j<=n-1長(zhǎng)度減少為:n-1第四十一頁(yè),共六十七頁(yè),2022年,8月28日411.4棧和隊(duì)列1.4.1棧和隊(duì)列的定義

棧和隊(duì)列是兩種特殊的線性表,它們是運(yùn)算時(shí)要受到某些限制的線性表,故也稱為限定性的數(shù)據(jù)結(jié)構(gòu)。第四十二頁(yè),共六十七頁(yè),2022年,8月28日42棧的定義棧:限定只能在表的一端進(jìn)行插入和刪除的特殊的線性表,此種結(jié)構(gòu)稱為先進(jìn)后出(FILO)或后進(jìn)先出(LIFO)設(shè)棧s=(a1,a2,...,ai,...,an),其中a1是棧底元素,an是棧頂元素。棧頂(top):允許插入和刪除的一端;棧底(bottom):不允許插入和刪除的一端。約定用指針top始終指向棧頂?shù)奈恢茫弥羔榖ottom指向棧底。

a1a2….ai進(jìn)棧出棧topbottomn1第四十三頁(yè),共六十七頁(yè),2022年,8月28日431.4.2棧的順序存儲(chǔ)結(jié)構(gòu)及其基本運(yùn)算a2a1a1a2top

用順序存儲(chǔ)結(jié)構(gòu)表示的棧。

順序棧用一組連續(xù)的存儲(chǔ)單元存放自棧底到棧頂?shù)臄?shù)據(jù)元素,一般用一維數(shù)組表示,設(shè)置一個(gè)簡(jiǎn)單變量top指示棧頂位置,稱為棧頂指針,它始終指向待插入元素的位置?;具\(yùn)算:壓(進(jìn))棧:PUSH出棧:POP讀棧頂元素第四十四頁(yè),共六十七頁(yè),2022年,8月28日44進(jìn)棧示例

棧滿:棧頂指針指向存儲(chǔ)空間的最后一個(gè)位置第四十五頁(yè),共六十七頁(yè),2022年,8月28日45退棧示例第四十六頁(yè),共六十七頁(yè),2022年,8月28日461.4.1.2隊(duì)列(

Queue)的定義定義:一種特殊的線性結(jié)構(gòu),限定只能在表的一端進(jìn)行插入,在表的另一端進(jìn)行刪除的線性表。a1,

a2,

a3,

a4,…………

an-1,

an

隊(duì)列示意圖隊(duì)頭隊(duì)尾隊(duì)列只允許在隊(duì)尾插入,在對(duì)頭刪除。隊(duì)頭指針:front:指向排頭元素的前一個(gè)位置隊(duì)尾指針:rear:指向隊(duì)尾元素此種結(jié)構(gòu)稱為先進(jìn)先出(FIFO)或后進(jìn)后出(LILO)。第四十七頁(yè),共六十七頁(yè),2022年,8月28日47隊(duì)列的主要運(yùn)算(1)插入一個(gè)新的隊(duì)尾元素,稱為進(jìn)隊(duì);(2)刪除隊(duì)頭元素,稱為出隊(duì);(3)讀取隊(duì)頭元素;當(dāng)有新元素入隊(duì)時(shí),尾指針加1,當(dāng)有元素出隊(duì)時(shí),頭指針加1。故在非空隊(duì)列中,頭指針始終指向隊(duì)頭元素前一個(gè)位置,而尾指針始終指向隊(duì)尾元素的位置第四十八頁(yè),共六十七頁(yè),2022年,8月28日48隊(duì)列的進(jìn)隊(duì)和出隊(duì)

進(jìn)隊(duì)時(shí)隊(duì)尾指針先進(jìn)一rear=rear+1,再將新元素按rear指示位置加入。出隊(duì)時(shí)隊(duì)頭指針先進(jìn)一front=front+1,再將下標(biāo)為front的元素取出。

隊(duì)滿時(shí)再進(jìn)隊(duì)將溢出出錯(cuò);隊(duì)空時(shí)再出隊(duì)將隊(duì)空處理。隊(duì)滿:隊(duì)尾指針指向存儲(chǔ)空間的最后一個(gè)位置第四十九頁(yè),共六十七頁(yè),2022年,8月28日49定義:存儲(chǔ)隊(duì)列的線型空間被模擬為首尾相接的環(huán)形空間處理。循環(huán)隊(duì)列(長(zhǎng)度為m)的的性質(zhì):循環(huán)隊(duì)列的初始狀態(tài):front

=rear=m隊(duì)頭、隊(duì)尾指針加1時(shí)若結(jié)果等于m+1置為1。循環(huán)隊(duì)列(CircularQueue)第五十頁(yè),共六十七頁(yè),2022年,8月28日50Q(1:m)…21mrearfront第五十一頁(yè),共六十七頁(yè),2022年,8月28日51Q(1:6)rearfrontAECDBF第五十二頁(yè),共六十七頁(yè),2022年,8月28日52隊(duì)空時(shí):front==rear;隊(duì)滿時(shí):front==rear

由于隊(duì)滿和對(duì)空的條件一樣,無(wú)法判斷循環(huán)隊(duì)列的狀態(tài),所以增加了一個(gè)標(biāo)志s,s的定義如下:s1表示隊(duì)列非空0表示隊(duì)列空P19-20詳細(xì)說(shuō)明第五十三頁(yè),共六十七頁(yè),2022年,8月28日531.5鏈表線性鏈表指針數(shù)據(jù)線性鏈表節(jié)點(diǎn)指針數(shù)據(jù)指針數(shù)據(jù)第五十四頁(yè),共六十七頁(yè),2022年,8月28日541.5.1線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)

將線性表的元素放到一個(gè)具有頭指針的鏈表中,鏈表中每個(gè)結(jié)點(diǎn)包含數(shù)據(jù)域和指針域。

數(shù)據(jù)域存放數(shù)據(jù),指針域存放后繼結(jié)點(diǎn)的地址,最后一個(gè)結(jié)點(diǎn)的指針域?yàn)榭铡_壿嬌舷噜彽臄?shù)據(jù)元素在內(nèi)存中的物理存儲(chǔ)空間不一定相鄰。第五十五頁(yè),共六十七頁(yè),2022年,8月28日55上圖的線性表為ZHAO,QIAN,SUN,LI,ZHOU,WU,ZHENG,WANG第五十六頁(yè),共六十七頁(yè),2022年,8月28日56線性鏈表表示法:0第五十七頁(yè),共六十七頁(yè),2022年,8月28日57雙向鏈表在每個(gè)結(jié)點(diǎn)中設(shè)置兩個(gè)指針,一個(gè)指向后繼,一個(gè)指向前驅(qū)??芍苯哟_定一個(gè)結(jié)點(diǎn)的前驅(qū)和后繼結(jié)點(diǎn)??商岣咝?。datanextbefore第五十八頁(yè),共六十七頁(yè),2022年,8月28日58鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)的特點(diǎn)

插入、刪除靈活方便,不需要移動(dòng)結(jié)點(diǎn),只要改變結(jié)點(diǎn)中指針域的值即可。適合于線性表是動(dòng)態(tài)變化的,不進(jìn)行頻繁查找操作、但經(jīng)常進(jìn)行插入刪除時(shí)使用。

鏈表的查找只能從頭指針開(kāi)始順序查找。

第五十九頁(yè),共六十七頁(yè),2022年,8月28日59babaxHH線性鏈表的插入運(yùn)算S在H所指向的結(jié)點(diǎn)之后插入新的結(jié)點(diǎn)1.5.2線性鏈

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論