全文預(yù)覽已結(jié)束
下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)已經(jīng)三天,剛開始自然遇到線性表。其中線性表內(nèi)含順序表和鏈表。順序表較為簡單,僅僅需要一個(gè)數(shù)組就可以完成,當(dāng)然最好也要添加一個(gè)表示長度的數(shù)據(jù)成員,如size。而鏈表,顯然比較多變看,小可不才,用了將近三天的時(shí)間才能明白,不能不說見笑于大方之家;皆因鏈表之中還有循環(huán)鏈表,雙向鏈表,雙向循環(huán)鏈表。好了,言歸正傳:循環(huán)鏈表的程序奉上:鏈表,不過增(insert)刪(delete)改(update)查(select)而已。在于Java程序中,還要加上構(gòu)造(Java有垃圾回收機(jī)制,故沒有析構(gòu),但可以手動(dòng)回收)。先看代碼如下:1、關(guān)于構(gòu)造函數(shù),小生理解到:需要什么樣的初始化,就寫出什么樣的構(gòu)造函數(shù),當(dāng)然,沒有時(shí)也可以構(gòu)造一個(gè)空的構(gòu)造函數(shù);本人就節(jié)點(diǎn)有一個(gè)構(gòu)造函數(shù)2、在方法中,注意index的具體代表就行。其中,在找上一節(jié)點(diǎn)時(shí),很多重復(fù)了,可以另外寫入一個(gè)函數(shù)中。3、最后只是一個(gè)測試形式的,可以自己設(shè)置4、自認(rèn)為一個(gè)比較簡單的程序了package link;class Node public int num;public Node next;public Node(int num, Node next) this.num = num;this.next = next;public class CycleList public Node head;public int size;public void insertHead(int element) /在頭結(jié)點(diǎn)的地方插入if(size = 0)head = new Node(element, null);head. next = head;else Node no = head;head = new Node(element, no);size +;public void insert(int index, int element) /插入元素if (size = 0) head = new Node(element, head); else if (index size) index = size;Node no1 = head;for (int i = 0; i index - 1; i+) no1 = no1.next;Node no2 = new Node(element, no1.next);no1.next = no2;size+;public void delete(int index) / 刪除函數(shù)if (index size) index = size;Node no3 = head;for (int i = 0; i index - 1; i+) no3 = no3.next;no3.next = no3.next.next;size-;public void select() / 查詢所有元素int sizelong = size;Node no4 = head;for (int i = 0; i sizelong; i+) System.out.print(no4.num);no4 = no4.next;public void update(int index, int element) /更換index位置的內(nèi)容Node no7 = head;for(int i=0; iindex-1; i+)no7 = no7.next;no7.num = element;public void sel(int index) /查詢index位置的內(nèi)容Node no8 = head;for(int i=0; iindex-1; i+)no8 = no8.next;System.out.println(no8.num);public static void main(String args) CycleList cl = new CycleList();cl.insert(0, 4); / index 代表第幾個(gè)后面,當(dāng)然,第0個(gè)后面,即為插頭節(jié)點(diǎn)cl.insert(2, 2); / 無論插入還是刪除cl.insert(3, 5); /更改很準(zhǔn)確cl.insert(4, 6); / 查詢單個(gè)也是可以的cl.insert(5, 9);cl.select();System.out.print( -);cl.insert(0, 8); cl.select();System.out.print( -);cl.insertHead(3);cl.select();System.out.println(-);cl.de
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 端州租房合同范例
- 口腔勞務(wù)合同范例
- app建設(shè) 合同范例
- 餐館餐廳轉(zhuǎn)讓合同范例
- 工程合同和服務(wù)合同范例
- 勞動(dòng)合同范例 出差
- 托管農(nóng)機(jī)服務(wù)合同范例
- 估值合同范例
- 砂礦機(jī)械采購合同范例
- 購買談判合同范例
- PDCA循環(huán)培訓(xùn)課件
- 農(nóng)村小學(xué)特色體育課程開發(fā)與實(shí)踐研究課題申報(bào)評(píng)審書1
- (正式版)HGT 20656-2024 化工供暖通風(fēng)與空氣調(diào)節(jié)詳細(xì)設(shè)計(jì)內(nèi)容和深度規(guī)定
- 2024年中國航油招聘筆試參考題庫附帶答案詳解
- 宿舍零食盒子項(xiàng)目策劃
- 糖尿病治療研究進(jìn)展
- 招聘司機(jī)方案
- 浙江省寧波市2023-2024學(xué)年高一上學(xué)期1月期末地理試題【含答案解析】
- 創(chuàng)業(yè)之星學(xué)創(chuàng)杯經(jīng)營決策常見問題匯總
- 2022年1月上海春季高考英語真題(學(xué)生版+解析版+聽力音頻)
- 家長開放日發(fā)言稿課件
評(píng)論
0/150
提交評(píng)論