




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
數(shù)據(jù)結(jié)構(gòu)12十二月2023學時數(shù):48學時教材:《數(shù)據(jù)結(jié)構(gòu)C語言版》嚴蔚敏、吳偉民-----清華大學出版社教學參考書:[1]殷人昆等,數(shù)據(jù)結(jié)構(gòu)(用面向?qū)ο蠓椒ㄅcC++描述),清華大學出版社[2]《數(shù)據(jù)結(jié)構(gòu)題集》(C語言版),嚴蔚敏,清華大學出版社[3]丁寶康等,數(shù)據(jù)結(jié)構(gòu)自學考試指導,清華大學出版社課程介紹2第1章緒論第2章線性表第3章棧和隊列第4章串第5章數(shù)組和廣義表第6章樹和二叉樹第7章圖第9章查找
數(shù)據(jù)結(jié)構(gòu)3
1.1什么是數(shù)據(jù)結(jié)構(gòu)
1.2基本概念和術語
1.3抽象數(shù)據(jù)類型的表示和實現(xiàn)
1.4算法和算法分析第1章緒論4一、數(shù)據(jù)結(jié)構(gòu)課程的研究內(nèi)容電子計算機的主要用途:
早期:主要用于數(shù)值計算。
后來:
處理逐漸擴大到非數(shù)值計算領域(能處理多種復雜的具有一定結(jié)構(gòu)關系的數(shù)據(jù))數(shù)學模型→選擇計算機語言→編出程序→測試→最終解答數(shù)據(jù)元素之間的相互關系一般無法用數(shù)學方程加以描述1.1什么是數(shù)據(jù)結(jié)構(gòu)5
非數(shù)值計算問題例1.1
電話號碼查詢問題。例1.2
田徑賽的時間安排問題:設有六個比賽項目,規(guī)定每個選手至多可參加三個項目,有五人報名參加比賽(如下表所示)。要求設計比賽日程表,使得在盡可能短的時間內(nèi)完成比賽。1.1什么是數(shù)據(jù)結(jié)構(gòu)6(1)設用如下六個不同的編碼代表不同的項目:
跳高跳遠標槍鉛球100米200米
AB CDE F姓名項目1項目2項目3丁一ABE馬二CD
張三CEF李四DFA王五BF(2)用頂點(圓圈)代表比賽項目
不能同時進行比賽的項目之間連上一條邊。AEBFDC比賽時間比賽項目1A,C2B,D3E4F1.1什么是數(shù)據(jù)結(jié)構(gòu)7因此,可以認為:數(shù)據(jù)結(jié)構(gòu)是一門研究非數(shù)值計算的程序設計問題中計算機的操作對象以及它們之間的關系和操作等的學科。由此可見:對于解決非數(shù)值計算的問題首先要考慮對相關的各種信息如何表示、組織和存儲?1.1什么是數(shù)據(jù)結(jié)構(gòu)81.許卓群,張乃孝,楊冬青,唐世渭,《數(shù)據(jù)結(jié)構(gòu)》,國防科技大學計算機研究所,1985年“按某種邏輯關系組織起來的一批數(shù)據(jù),按一定的存儲表示方式把它存儲在計算機的存儲器中,并在這些數(shù)據(jù)上定義了一個運算的集合,就叫做一個數(shù)據(jù)結(jié)構(gòu)?!碧攸c:從三個方面來看數(shù)據(jù)結(jié)構(gòu)。2.李春葆,《數(shù)據(jù)結(jié)構(gòu)(C語言篇)習題與解析》,清華大學出版社,2000年“數(shù)據(jù)結(jié)構(gòu)是指同一數(shù)據(jù)元素類中各數(shù)據(jù)元素之間存在的關系。數(shù)據(jù)結(jié)構(gòu)又可以分為下述三個組成部分,它們分別是數(shù)據(jù)的邏輯結(jié)構(gòu)、數(shù)據(jù)的存儲結(jié)構(gòu)和數(shù)據(jù)的運算。”特點:明確強調(diào)“關系”,且細分“關系”。1.1什么是數(shù)據(jù)結(jié)構(gòu)93.黃國瑜,葉乃菁,《數(shù)據(jù)結(jié)構(gòu)》,清華大學出版社,2001年“在程序語言中,“數(shù)據(jù)類型”是指程序語言中變量所能表示并存儲的數(shù)據(jù)種類,“數(shù)據(jù)實體”則是指在一種數(shù)據(jù)類型中的所有可能元素的集合。而“數(shù)據(jù)結(jié)構(gòu)”,大致上說來,就是數(shù)據(jù)實體中元素之間的關系,包括數(shù)據(jù)的表示法和運算?!碧攸c:指出“關系”為表示法和運算。4.陳慧南,《數(shù)據(jù)結(jié)構(gòu)——C語言描述》,西安電子科技大學出版社,2003年“從數(shù)學概念上講,一個數(shù)據(jù)結(jié)構(gòu)是由數(shù)據(jù)元素依據(jù)某種邏輯聯(lián)系組織起來的。研究數(shù)據(jù)結(jié)構(gòu)是為了解決應用問題,所以討論數(shù)據(jù)結(jié)構(gòu)必須同時討論在數(shù)據(jù)結(jié)構(gòu)上執(zhí)行的相關運算及其算法才有意義。”特點:從邏輯聯(lián)系入手,兼顧其它方面。1.1什么是數(shù)據(jù)結(jié)構(gòu)10計算機內(nèi)的數(shù)值運算依靠方程式,而非數(shù)值運算則要依靠數(shù)據(jù)結(jié)構(gòu)。同樣的數(shù)據(jù)對象,用不同的數(shù)據(jù)結(jié)構(gòu)來表示,運算效率可能有明顯的差異。程序設計實質(zhì)=好算法+好結(jié)構(gòu)二、學習數(shù)據(jù)結(jié)構(gòu)課程的用處1.1什么是數(shù)據(jù)結(jié)構(gòu)11是介于數(shù)學、計算機硬件和計算機軟件三者之間的一門核心課程數(shù)學硬件軟件三、數(shù)據(jù)結(jié)構(gòu)課程的地位1.1什么是數(shù)據(jù)結(jié)構(gòu)12數(shù)據(jù)--是對客觀事物的符號表示,在計算機科學中是指所有(Data)
能輸入到計算機中并被計算機程序處理的符號的總稱(整數(shù)、實數(shù)、字符串、圖像、聲音等)。數(shù)據(jù)元素--是數(shù)據(jù)的基本單位,具有完整確定的實際意義,(DataElement)在計算機程序中通常作為一個整體進行考慮和處理(又稱記錄、結(jié)點等)。數(shù)據(jù)項--一個數(shù)據(jù)元素可由若干個數(shù)據(jù)項組成,是數(shù)據(jù)的(DataItem)不可分割的最小單位(又稱字段等)。三者之間的關系:數(shù)據(jù)>數(shù)據(jù)元素>數(shù)據(jù)項例:學生檔案>個人記錄>姓名、性別、籍貫…1.2基本概念和術語13數(shù)據(jù)對象(DataObject)--是性質(zhì)相同的數(shù)據(jù)元素的集合,是數(shù)據(jù)的一個子集。數(shù)據(jù)結(jié)構(gòu)(DataStructure)--是相互之間存在一種或多種特定關系的數(shù)據(jù)元素的集合。
表示為:
Data_Structure=(D,S)元素有限集關系有限集例1:用數(shù)據(jù)結(jié)構(gòu)表示一周中的七天。Data_Structure=(D,S),其中,D={}S={}Mon,Tue,Wen,Thu,Fri,Sat,Sun<Mon,Tue>,<Tue,Wen>,<Wen,Thu>…1.2基本概念和術語14THANKYOUSUCCESS12/12/202315可編輯(1)Data_Structure=(D,S),其中,
D={01,02,03,04,05}S={}(2)S=(D,R)D={a,b,c,d,e,f
}R={<a,e>,<
b,c>,<
c,a>,<
e,f>,<
f,d>}解:
上述表達式可用圖形表示為:aebcfd例2:將下述表達式用圖形的形式表示出來集合結(jié)構(gòu)線性結(jié)構(gòu)1.2基本概念和術語16(3)
Data_Structure=(D,S),其中,
D={01,02,03,04,05,06,07}S={(01,02),(01,03),(01,04),(02,05),(02,06),(03,07)}(4)S=(D,R)
D={di|1≤i≤5,1≤j≤5}
R={<di,dj>,i<j}d1d2d3d4d501020304050607樹形結(jié)構(gòu)圖狀結(jié)構(gòu)1.2基本概念和術語17邏輯結(jié)構(gòu)--數(shù)據(jù)元素之間的邏輯關系,即結(jié)構(gòu)中定義的“關系”。邏輯結(jié)構(gòu)可細分為4類:集合結(jié)構(gòu)線性結(jié)構(gòu)樹形結(jié)構(gòu)圖狀結(jié)構(gòu)一對一關系一對多關系多對多關系非線性結(jié)構(gòu)1.2基本概念和術語1801000101物理結(jié)構(gòu)--也稱存儲結(jié)構(gòu),是數(shù)據(jù)的邏輯結(jié)構(gòu)在計算機存儲器內(nèi)的表示(映像)。順序映像非順序映像特點是借助元素在存儲器中的相對位置來表示數(shù)據(jù)元素之間的邏輯關系。特點是借助指示元素存儲地址的指針表示數(shù)據(jù)元素之間的邏輯關系。例:復數(shù)3.0-2.3i的存儲形式3.0-20-2.3算法的設計取決于選定的數(shù)據(jù)(邏輯)結(jié)構(gòu)算法的實現(xiàn)依賴于采用的存儲結(jié)構(gòu)----順序存儲結(jié)構(gòu)----鏈式存儲結(jié)構(gòu)1.2基本概念和術語19數(shù)據(jù)類型--是一個值的集合和定義在這個值集上的一組操作
的總稱。抽象數(shù)據(jù)類型—由用戶定義,用以表示應用問題的數(shù)據(jù)模型。它由基本的數(shù)據(jù)類型組成,并包含一組相關的操作。抽象數(shù)據(jù)類型可用ADT=(D,S,P)三元組表示數(shù)據(jù)對象D上的關系集D上的操作集ADT抽象數(shù)據(jù)類型名{
數(shù)據(jù)對象:〈數(shù)據(jù)對象的定義〉數(shù)據(jù)關系:〈數(shù)據(jù)關系的定義〉基本操作:〈基本操作的定義〉
}ADT抽象數(shù)據(jù)類型名ADT常用定義格式1.3抽象數(shù)據(jù)類型的表示與實現(xiàn)20例:給出自然數(shù)(NaturalNumber)的抽象數(shù)據(jù)類型定義。IsZero(x):Booleanif(x==0)返回Trueelse返回FalseAdd(x,y):NaturalNumberif(x+y<=MaxInt)返回x+yelse返回MaxIntSubtract(x,y):NaturalNumberif(x<y)返回0else返回x-yEqual(x,y):Booleanif(x==y)返回Trueelse返回FalseADTNaturalNumber
{}NaturalNumber數(shù)據(jù)對象:數(shù)據(jù)關系:數(shù)據(jù)操作:一個整數(shù)的有序子集合,它開始于0,結(jié)束于機器能表示的最大整數(shù)。1.3抽象數(shù)據(jù)類型的表示與實現(xiàn)21一、算法:算法是對特定問題求解步驟的一種描述,它是指令的有限序列,其中每一條指令表示一個或多個操作。二、算法的5個特性:
有窮性、確定性、可行性、輸入和輸出三、算法設計的要求:
正確性、可讀性、健壯性、效率與低存儲需求時間復雜度空間復雜度1.4算法和算法分析221.4算法和算法分析算法效率的度量方法事后統(tǒng)計方法事前分析估算算法采用的策略、方法編譯產(chǎn)生的代碼質(zhì)量問題的輸入規(guī)模機器執(zhí)行指令的速度時間復雜度:一個算法花費的時間與算法中語句的執(zhí)行次數(shù)成正比例,哪個算法中語句執(zhí)行次數(shù)多,它花費時間就多。一個算法中語句的執(zhí)行次數(shù)稱為語句頻度或時間頻度,記為T(n)。算法中基本操作重復執(zhí)行的次數(shù)是問題規(guī)模n的某個函數(shù),算法的時間量度記作
T(n)=O(f(n))隨著問題規(guī)模的增大,算法執(zhí)行時間的增長率和f(n)的增長率相同,稱為算法的漸近時間復
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 林業(yè)生物多樣性保護與利用合同
- 智能設備維護及檢修合同書
- 材料力學教材試題及答案
- 測試結(jié)果的分析與應用試題及答案
- 顯著提高的公路工程知識積累試題及答案
- 專科化工原理考試題及答案
- 店面整體轉(zhuǎn)讓合同協(xié)議書
- 2025年工業(yè)互聯(lián)網(wǎng)平臺自然語言處理技術在工業(yè)互聯(lián)網(wǎng)平臺智能決策支持系統(tǒng)中的應用前景
- 計算機二級MySQL數(shù)據(jù)庫優(yōu)化策略試題及答案
- 商鋪轉(zhuǎn)讓定金合同協(xié)議書
- 四川省2024年中考物理試題13套附解析答案
- 第1單元班級衛(wèi)生大掃除(教案)-三年級上冊勞動魯科版
- 2024年新疆喀什公務員錄用考試《行測》真題及答案
- 蒙醫(yī)藥基礎知識課件
- 零基預算改革解讀
- 肱骨外上髁炎的健康宣教
- 元宇宙技術與應用知到課后答案智慧樹章節(jié)測試答案2025年春中國科學技術大學
- 交警執(zhí)勤執(zhí)法安全課件
- 內(nèi)墻涂料施工方案
- 委托取水許可驗收合同(2篇)
- 機用虎鉗畢業(yè)設計論文
評論
0/150
提交評論