版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、數(shù)據(jù)線性結(jié)構(gòu)、數(shù)據(jù)線性結(jié)構(gòu)、順序表及鏈表順序表及鏈表數(shù)據(jù)的線性結(jié)構(gòu)數(shù)據(jù)的線性結(jié)構(gòu)線性結(jié)構(gòu)線性結(jié)構(gòu)特點(diǎn)特點(diǎn):在數(shù)據(jù)元素的非空有限集中:在數(shù)據(jù)元素的非空有限集中l(wèi)存在存在唯一唯一的一個被稱作的一個被稱作“第一個第一個”的數(shù)據(jù)元素的數(shù)據(jù)元素l存在存在唯一唯一的一個被稱作的一個被稱作“最后一個最后一個”的數(shù)據(jù)元素的數(shù)據(jù)元素l除第一個外,集合中的每個數(shù)據(jù)元素均除第一個外,集合中的每個數(shù)據(jù)元素均只有一個只有一個前驅(qū)前驅(qū)l除最后一個外,集合中的每個數(shù)據(jù)元素均除最后一個外,集合中的每個數(shù)據(jù)元素均只有一只有一個后繼個后繼l1 線性表的邏輯結(jié)構(gòu)線性表的邏輯結(jié)構(gòu)l定義:一個線性表是定義:一個線性表是n個數(shù)據(jù)元素的有
2、限序列個數(shù)據(jù)元素的有限序列niaaaa,21如例 英文字母表(A,B,C,.Z)是一個線性表例學(xué)號姓名年齡001張三18002李四19數(shù)據(jù)元素特征:v元素個數(shù)n表長度,n=0空表v1idata表示p指向結(jié)點(diǎn)的數(shù)據(jù)域(*p).linkp-link表示p指向結(jié)點(diǎn)的指針域生成一個JD型新結(jié)點(diǎn):p=(JD *)malloc(sizeof(JD);系統(tǒng)回收p結(jié)點(diǎn):free(p)線性鏈表v定義:結(jié)點(diǎn)中只含一個指針域的鏈表叫,也叫單鏈表ha1a2頭結(jié)點(diǎn)an .h空表頭結(jié)點(diǎn):在單鏈表第一個結(jié)點(diǎn)前附設(shè)一個結(jié)點(diǎn)叫頭結(jié)點(diǎn)指針域為空表示線性表為空單鏈表的基本運(yùn)算單鏈表的基本運(yùn)算 查找:查找單鏈表中是否存在結(jié)點(diǎn)X,若有
3、則返回指向X結(jié)點(diǎn)的指針;否則返回NULL 算法描述While循環(huán)中語句頻度為若找到結(jié)點(diǎn)X,為結(jié)點(diǎn)X在表中的序號否則,為n nOnTpabxsu算法評價l插入:在線性表兩個數(shù)據(jù)元素a和b間插入x,已知p指向as-link=p-link;p-link=s; 1OnTu算法描述u算法評價 算法描述pabc 1OnTu算法評價l刪除:單鏈表中刪除b,設(shè)p指向ap-link=p-link-link; nOnTl動態(tài)建立單鏈表算法:設(shè)線性表n個元素已存放在數(shù)組a中,建立一個單鏈表,h為頭指針u算法描述u算法評價h頭結(jié)點(diǎn)an 0h頭結(jié)點(diǎn)an-10an a2.h頭結(jié)點(diǎn)an-10an ha1a2頭結(jié)點(diǎn)an .0
4、h頭結(jié)點(diǎn)0單鏈表特點(diǎn)單鏈表特點(diǎn) 它是一種動態(tài)結(jié)構(gòu),整個存儲空間為多個鏈表共用 不需預(yù)先分配空間 指針占用額外存儲空間 不能隨機(jī)存取,查找速度慢l循環(huán)鏈表循環(huán)鏈表(circular linked list)循環(huán)鏈表是表中最后一個結(jié)點(diǎn)的指針指向頭結(jié)點(diǎn),循環(huán)鏈表是表中最后一個結(jié)點(diǎn)的指針指向頭結(jié)點(diǎn),使鏈表構(gòu)成環(huán)狀使鏈表構(gòu)成環(huán)狀特點(diǎn):從表中任一結(jié)點(diǎn)出發(fā)均可找到表中其他結(jié)點(diǎn)特點(diǎn):從表中任一結(jié)點(diǎn)出發(fā)均可找到表中其他結(jié)點(diǎn),提高查找效率,提高查找效率操作與單鏈表基本一致操作與單鏈表基本一致,循環(huán)條件不同循環(huán)條件不同 單鏈表p或p-link=NULL 循環(huán)鏈表p或p-link=Hhh空表l雙向鏈表(雙向鏈表(do
5、uble linked list)單鏈表具有單向性的缺點(diǎn)單鏈表具有單向性的缺點(diǎn)結(jié)點(diǎn)定義結(jié)點(diǎn)定義typedef struct node datatype element; struct node *prior,*next;JD;prior element nextL空雙向循環(huán)鏈表:非空雙向循環(huán)鏈表:LABbcapp-prior-next= p= p-next-proir;bcaPvoid del_dulist(JD *p)p-prior-next=p-next; p-next-prior=p-prior; free(p);v刪除l算法描述l算法評價:T(n)=O(1)p-prior-next=p
6、-next;p-next-prior=p-prior;void ins_dulist(JD* p,int x)JD *s; s=(JD*)malloc(sizeof(JD); s-element=x; s-prior=p-prior; p-prior-next=s; s-next=p; p-prior=s;l算法描述l算法評價:T(n)=O(1)xSbaPv插入l4 線性表的應(yīng)用舉例線性表的應(yīng)用舉例 一元多項式的表示及相加一元多項式的表示及相加l一元多項式的表示:一元多項式的表示:nnnxPxPxPPxP2210)(),(210nPPPPP可用線性表P表示200001000231)(xxxS但
7、對S(x)這樣的多項式浪費(fèi)空間一般emmnxPxPxPxPee2121)(其中為非零系數(shù))(iPemee210用數(shù)據(jù)域含兩個數(shù)據(jù)項的線性表表示emPePePm,2121其存儲結(jié)構(gòu)可以用順序存儲結(jié)構(gòu),也可以用單鏈表l單鏈表的結(jié)點(diǎn)定義單鏈表的結(jié)點(diǎn)定義coefexpnext17787172522117)()()(9228)(5937)(xxxxBxAxCxxxxBxxxxA-1A7 0 3 1 9 8 5 17 -1B8 1 22 7 -9 8 -1C7 0 11 1 22 7 5 17 一元多項式相加typedef struct node int coef,exp; struct node *ne
8、xt;JD;設(shè)p,q分別指向A,B中某一結(jié)點(diǎn),p,q初值是第一結(jié)點(diǎn)比較p-exp與q-expp-exp exp: p結(jié)點(diǎn)是和多項式中的一項 p后移,q不動p-exp q-exp: q結(jié)點(diǎn)是和多項式中的一項 將q插在p之前,q后移,p不動p-exp = q-exp: 系數(shù)相加0:從A表中刪去p, 釋放p,q,p,q后移0:修改p系數(shù)域, 釋放q,p,q后移直到p或q為NULL 若q=NULL,結(jié)束 若p=NULL,將B中剩余部分連到A上即可運(yùn)算規(guī)則q-1pa7 0 3 1 9 8 5 17 -1pb8 1 22 7 -9 8 ppreq-1pa7 0 3 1 9 8 5 17 -1pb8 1 22 7 -9 8 ppreq-1pa7 0 11 1 9 8 5 17 -1pb8 1 22 7 -9 8 ppreq-1pa7 0 11 1 9 8 5 17 -1pb8 1 22 7 -9 8
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 企業(yè)管理服務(wù)咨詢服務(wù)簡單合同
- 沖孔灌注樁施工勞務(wù)分包合同
- 三方合同補(bǔ)充協(xié)議書
- 資產(chǎn)買賣合同
- 給水、污水泵設(shè)備安裝合同
- 地毯購銷合同范本地毯購銷合同
- 在線教育系統(tǒng)共建共享合同
- 產(chǎn)品銷售合同范本集錦
- 醫(yī)療器械銷售合同簡易模板
- 社區(qū)團(tuán)購平臺搭建及運(yùn)營合同
- 2024年濰坊工程職業(yè)學(xué)院單招職業(yè)適應(yīng)性測試題庫完美版
- GB/T 44823-2024綠色礦山評價通則
- 人教版英語高考試卷與參考答案(2024年)
- 紅樓夢服飾文化
- 浙江省中小學(xué)心理健康教育課程標(biāo)準(zhǔn)
- 《共情的力量》課件
- 2022年中國電信維護(hù)崗位認(rèn)證動力專業(yè)考試題庫大全-上(單選、多選題)
- 水平二(四年級第一學(xué)期)體育《小足球(18課時)》大單元教學(xué)計劃
- 《關(guān)于時間管理》課件
- 醫(yī)藥高等數(shù)學(xué)智慧樹知到課后章節(jié)答案2023年下浙江中醫(yī)藥大學(xué)
- 城市道路智慧路燈項目 投標(biāo)方案(技術(shù)標(biāo))
評論
0/150
提交評論