版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
4.1數(shù)據(jù)結(jié)構(gòu)4.2文件結(jié)構(gòu)4.3數(shù)據(jù)庫(kù)
4.1.1數(shù)據(jù)結(jié)構(gòu)的基本概念
1.?dāng)?shù)據(jù)與數(shù)據(jù)結(jié)構(gòu)
2.?dāng)?shù)據(jù)的邏輯結(jié)構(gòu)
3.?dāng)?shù)據(jù)的存儲(chǔ)結(jié)構(gòu)
4.?dāng)?shù)據(jù)的運(yùn)算
5.線性結(jié)構(gòu)與非線性結(jié)構(gòu)
4.1數(shù)據(jù)結(jié)構(gòu)
4.1.2線性表
1.線性表的定義和邏輯特征
2.線性表的順序存儲(chǔ)結(jié)構(gòu)
4.1.3棧
1.棧的定義
如圖4-1所示,棧中有元素a1,a2,…,an,a1稱為棧底元素。新元素進(jìn)棧要置于an之上,刪除或出棧必須先對(duì)an進(jìn)行操作。圖4-1棧結(jié)構(gòu)2.棧的順序存儲(chǔ)方式
3.棧的基本運(yùn)算
4.1.4隊(duì)列
1.隊(duì)列的定義
隊(duì)列(Queue)是允許在一端進(jìn)行插入、而在另一端進(jìn)行刪除的線性表,如圖4-2所示。
2.循環(huán)隊(duì)列
為了克服“假溢出”現(xiàn)象采用循環(huán)隊(duì)列,就是將隊(duì)列存儲(chǔ)空間的最后一個(gè)位置繞到第一個(gè)位置,形成邏輯上的環(huán)狀空間,供循環(huán)隊(duì)列使用,如圖4-3所示。
3.循環(huán)隊(duì)列的基本運(yùn)算
圖4-2隊(duì)列的示意圖圖4-3循環(huán)隊(duì)列存儲(chǔ)空間示意圖4.1.5線性鏈表
1.結(jié)點(diǎn)結(jié)構(gòu)
在鏈?zhǔn)酱鎯?chǔ)方式中,每個(gè)結(jié)點(diǎn)由兩部分組成:一部分用于存放數(shù)據(jù)元素的值,稱為數(shù)據(jù)域;另一部分用于存放指針,稱為指針域,用于指向該結(jié)點(diǎn)的后繼結(jié)點(diǎn)的指針,如圖4-4所示。圖4-4結(jié)點(diǎn)的結(jié)構(gòu)
2.單鏈表
用鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)存儲(chǔ)的線性表稱作鏈表。圖4-5所示的就是一個(gè)單鏈表。
3.雙向鏈表
在單鏈表中,每一個(gè)結(jié)點(diǎn)只有一個(gè)指針域,由這個(gè)指針只能找到其后繼結(jié)點(diǎn),而不能找到其前趨結(jié)點(diǎn)。因此,在某些應(yīng)用中,對(duì)于線性鏈表中的每個(gè)結(jié)點(diǎn)設(shè)置兩個(gè)指針,一個(gè)稱為左指針(llink),指向其前趨結(jié)點(diǎn);另一個(gè)稱為右指針(rlink),指向其后繼結(jié)點(diǎn),這種鏈表稱為雙向鏈表,其結(jié)點(diǎn)結(jié)構(gòu)如圖4-6所示,邏輯結(jié)構(gòu)如圖4-7所示。圖4-5單鏈表示意圖圖4-6雙向鏈表的結(jié)點(diǎn)結(jié)構(gòu)圖4-7雙向鏈表示意圖
4.循環(huán)鏈表
5.鏈?zhǔn)綏?/p>
6.鏈?zhǔn)疥?duì)列
7.線性鏈表主要基本運(yùn)算
線性鏈表的插入過程是先向系統(tǒng)申請(qǐng)一個(gè)新結(jié)點(diǎn)(由指針q指向),并賦值,然后利用查找算法找到待插入位置的前一結(jié)點(diǎn)的指針p并修改兩個(gè)指針即可:先將結(jié)點(diǎn)q的指針域內(nèi)容改為結(jié)點(diǎn)p的原后繼結(jié)點(diǎn),再將結(jié)點(diǎn)p的指針域內(nèi)容改為指向結(jié)點(diǎn)q,線性鏈表的插入如圖4-8所示。
圖4-8線性鏈表的插入
(3)刪除結(jié)點(diǎn)。先判斷線性鏈表是否為空,然后對(duì)非空表利用查找算法找到待刪除位置的前一結(jié)點(diǎn)的指針p,用另一指針q暫時(shí)保存結(jié)點(diǎn)p的后繼結(jié)點(diǎn)(即待刪除結(jié)點(diǎn)),再把p結(jié)點(diǎn)的后繼直接鏈接在q結(jié)點(diǎn)的后繼結(jié)點(diǎn)上,最后釋放q結(jié)點(diǎn)所分配的內(nèi)存空間,如圖4-9所示。
8.循環(huán)鏈表及基本運(yùn)算
圖4-9線性鏈表的刪除4.1.6樹與二叉樹
樹形結(jié)構(gòu)是一種簡(jiǎn)單的非線性結(jié)構(gòu),在樹這種數(shù)據(jù)結(jié)構(gòu)中,所有數(shù)據(jù)元素之間的關(guān)系具有明顯的層次特性,它體現(xiàn)了數(shù)據(jù)元素之間的“一對(duì)多”的聯(lián)系。樹和二叉樹是最常用的樹形結(jié)構(gòu)。
1.樹的基本概念
在圖4-10中,結(jié)點(diǎn)A為根結(jié)點(diǎn)。圖4-10樹的表示
2.二叉樹的基本概念
因此,二叉樹具有五種基本形態(tài),分別是空二叉樹,只有一個(gè)根結(jié)點(diǎn)的二叉樹,只有左子樹的二叉樹,只有右子樹的二叉樹,左、右子樹都有的二叉樹,如圖4-11所示。圖4-11二叉樹的五種形態(tài)(a)空二叉樹;(b)只有一個(gè)根結(jié)點(diǎn)的二叉樹;、(c)只有左子樹的二叉樹;(d)只有右子樹的二叉樹;(e)左、右子樹都有的二叉樹
3.二叉樹的性質(zhì)
4.二叉樹的存儲(chǔ)
二叉樹的存儲(chǔ)常采用鏈接方式,它是指用鏈表來表示的一棵二叉樹,即用鏈來指示元素的邏輯關(guān)系。鏈表中每個(gè)結(jié)點(diǎn)由三個(gè)域組成,除了數(shù)據(jù)域外,還有兩個(gè)指針域,分別用來給出該結(jié)點(diǎn)左子樹和右子樹所在的鏈結(jié)點(diǎn)的存儲(chǔ)地址。二叉樹結(jié)點(diǎn)的存儲(chǔ)結(jié)構(gòu)如圖4-12所示。圖4-12二叉樹結(jié)點(diǎn)的存儲(chǔ)結(jié)構(gòu)
5.二叉樹的遍歷
遍歷是樹形結(jié)構(gòu)的一種重要運(yùn)算。遍歷一個(gè)樹形結(jié)構(gòu)就是按一定的次序訪問該結(jié)構(gòu)中的所有結(jié)點(diǎn),使每個(gè)結(jié)點(diǎn)恰好被訪問一次??梢园炊喾N不同的次序遍歷樹形結(jié)構(gòu),在這里僅介紹三種重要的二叉樹遍歷的方法。
圖4-13樹的結(jié)構(gòu)4.2.1操作系統(tǒng)的文件管理功能
1.計(jì)算機(jī)文件的基本概念
2.文件管理
3.文件的分類
4.文件的結(jié)構(gòu)
4.2文件結(jié)構(gòu)4.2.2順序文件
1.連續(xù)結(jié)構(gòu)順序文件
圖4-14給出了連續(xù)結(jié)構(gòu)文件的圖形說明。圖中,一個(gè)邏輯塊號(hào)為0、1、2、3的文件依次存放在物理塊15、16、17、18中。圖4-14連續(xù)結(jié)構(gòu)文件的示意圖
2.鏈結(jié)構(gòu)順序文件
圖4-15給出了鏈結(jié)構(gòu)文件的物理結(jié)構(gòu)。使用鏈結(jié)構(gòu)時(shí),不必在文件說明信息中指明文件的長(zhǎng)度,只要指明該文件的第一個(gè)塊號(hào)就可以按鏈指針檢索整個(gè)文件。鏈結(jié)構(gòu)的另一個(gè)特點(diǎn)是文件長(zhǎng)度可以動(dòng)態(tài)地增長(zhǎng),只要調(diào)整鏈指針就可在任何一個(gè)信息塊之間插入或刪除一個(gè)信息塊。圖4-15鏈結(jié)構(gòu)文件的示意圖4.2.3文本文件
文本文件是一種典型的順序文件,其文件的邏輯結(jié)構(gòu)又屬于流式文件。
4.2.4索引文件
索引結(jié)構(gòu)如圖4-16所示。圖4-16索引結(jié)構(gòu)文件的示意圖通常有的文件很大,文件索引表也就較大。如果索引表的大小超過了一個(gè)物理塊,可以采用間接索引(多重索引),也就是在索引表所指的物理塊中存放的不是文件信息,而是裝有這些信息的物理塊地址。這樣,如果一個(gè)物理塊可裝下n個(gè)物理塊地址,則經(jīng)過一級(jí)間接索引,可尋址的文件長(zhǎng)度將變?yōu)閚×n塊。如果文件長(zhǎng)度還大于n×n塊,還可以進(jìn)行類似的擴(kuò)充,即二級(jí)間接索引,其原理如圖4-17所示。圖4-17文件的多級(jí)索引結(jié)構(gòu)4.2.5哈希文件
在日常生活和工作中,經(jīng)常會(huì)遇到查找操作,如在列車時(shí)刻表中查找某次列車的開車時(shí)間、在學(xué)生成績(jī)表中查找某位學(xué)生的成績(jī)等。4.3.1數(shù)據(jù)庫(kù)技術(shù)的發(fā)展
計(jì)算機(jī)對(duì)數(shù)據(jù)的管理是指對(duì)數(shù)據(jù)的組織、分類、編碼、存儲(chǔ)、檢索和維護(hù)提供操作手段。
1.人工管理階段
2.文件系統(tǒng)階段
3.?dāng)?shù)據(jù)庫(kù)系統(tǒng)階段
4.3數(shù)據(jù)庫(kù)4.3.2數(shù)據(jù)庫(kù)的基本概念
1.?dāng)?shù)據(jù)庫(kù)系統(tǒng)的基本概念
1)數(shù)據(jù)庫(kù)
2)數(shù)據(jù)庫(kù)管理系統(tǒng)
3)數(shù)據(jù)庫(kù)管理員
4)數(shù)據(jù)庫(kù)系統(tǒng)
5)數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)
圖4-18所示為數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的組成示意圖。圖4-18數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的組成示意圖
2.?dāng)?shù)據(jù)庫(kù)管理系統(tǒng)的基本功能
3.?dāng)?shù)據(jù)庫(kù)系統(tǒng)的基本特點(diǎn)
4.3.3數(shù)據(jù)模型
1.什么是數(shù)據(jù)模型
2.E-R模型
3.關(guān)系數(shù)據(jù)模型
表4-1給出的學(xué)生考試成績(jī)表便是一個(gè)關(guān)系模型。在這張表中,每一列的命名都與學(xué)生的信息有關(guān)系,每一列是同一屬性,每一行稱為一條記錄。
表4-1學(xué)?生?信?息?表4.3.4數(shù)據(jù)庫(kù)的安全
數(shù)據(jù)庫(kù)的安全是數(shù)據(jù)庫(kù)系統(tǒng)的生命。
1)用戶身份認(rèn)證
2)存取控制
3)數(shù)據(jù)加密
4)審計(jì)追蹤與攻擊檢測(cè)4.3.5數(shù)據(jù)庫(kù)設(shè)計(jì)
數(shù)據(jù)庫(kù)設(shè)計(jì)方法中比較著名的有新奧爾良(NewOrleans)方法,它將數(shù)據(jù)庫(kù)設(shè)計(jì)過程分為4個(gè)階段:需求分析、概念結(jié)構(gòu)設(shè)計(jì)、邏輯結(jié)構(gòu)設(shè)計(jì)和物理結(jié)構(gòu)設(shè)計(jì),如圖4-1
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025特許經(jīng)營(yíng)權(quán)轉(zhuǎn)讓合同范本
- 洛陽師范學(xué)院《中學(xué)地理教學(xué)論》2023-2024學(xué)年第一學(xué)期期末試卷
- 2024實(shí)驗(yàn)室設(shè)備選購(gòu)合同3篇
- 2024年城市核心區(qū)域房產(chǎn)交易定金合同范本2篇
- 2024專項(xiàng)工作合作合同
- 2024年度農(nóng)業(yè)智能化溫室建設(shè)與運(yùn)營(yíng)管理合同3篇
- 城市廣場(chǎng)綠化養(yǎng)護(hù)承包合同
- 商業(yè)易主協(xié)議
- 電子產(chǎn)品生產(chǎn)線招投標(biāo)流程
- 廣告市場(chǎng)應(yīng)急照明施工協(xié)議
- GB/T 3871.6-1993農(nóng)業(yè)輪式和履帶拖拉機(jī)試驗(yàn)方法第6部分制動(dòng)試驗(yàn)
- GB/T 22844-2009配套床上用品
- GB/T 1962.2-2001注射器、注射針及其他醫(yī)療器械6%(魯爾)圓錐接頭第2部分:鎖定接頭
- GB/T 17646-2013小型風(fēng)力發(fā)電機(jī)組設(shè)計(jì)要求
- 中醫(yī)拔罐技術(shù)試題及答案
- 2023年蘇教版小學(xué)數(shù)學(xué)全套教材內(nèi)容安排表
- 滅火器驗(yàn)收表
- 裝修工程竣工驗(yàn)收?qǐng)?bào)告(7篇)
- 商務(wù)溝通-課件
- ommaya囊的護(hù)理教學(xué)課件
- 俄羅斯教育課件
評(píng)論
0/150
提交評(píng)論