資料結構課程設計之雙向鍊錶操作講解

2023-02-08 10:27:02 字數 1637 閱讀 5614

《資料結構》課程設計實驗報告

之雙向鍊錶的相關操作

專業 : 計算機資訊管理

姓名 : 陶鵬鵬

學號 : 201140130241

教師 : 吳志強

時間:2013.1.4

1. 問題分析1

1.1基本要求1

1.2分析過程1

2. 資料結構描述1

3. 演算法設計2

3.1演算法1:雙向鍊錶的建立2

3.2演算法2:雙向鍊錶的查詢2

3.3演算法3:雙向鍊錶的插入3

3.4演算法4:雙向鍊錶的刪除3

4. 程式具體步驟4

5. 程式執行結果10

6. 總結10

● 1.問題分析

1.1【基本要求】:建立雙向鍊錶,並進行插入,查詢,刪除等操作。

1.2【分析過程】:先通過建立函式建立雙向鍊錶,由文字檔案提供資料。

可以呼叫查詢函式,查詢與e值相同的結點是否存在;也可以通過插入函式,在第i個結點前插入值為e的結點,並且調節指標的變化;也可以呼叫刪除函式,刪除第i個結點,調節好指標,最後通過儲存函式保留資料到文字檔案中。

● 2.資料結構描述

#include

#include<>

using namespace std;

typedef struct dulnodedulnode,*dulinklist;

● 3.演算法設計

3.1演算法1:建立雙向鍊錶

status create_dul(dulinklist &l利用尾插法建立頭帶頭結點的雙向鍊錶 */

int n;

fscanf(fp,"%d",&n);

for(i=0;i

fclose(fp關閉文字檔案 */

3.2演算法2:雙向鍊錶的查詢

stadus locateelem_dul(dulinklist l,elemtype e查詢雙線鍊錶中第乙個值為e的結點位置*/

3.3演算法3:雙向鍊錶的插入

status listinsert_dul(dulinklist &l,int i,elemtype e) /* 在雙向鍊錶l中的第i個位置之前插入新結點s */

3.4演算法4:雙向鍊錶的刪除

status listdelete_dul(dulinklist &l,int i,elemtype &e); /* 在雙向鍊錶l中,刪除第i個結點 */

● 4.程式具體步驟

#include ""

#include ""

typedef int elemtype;

typedef struct lnode //定義結點型別

lnode,*linklist;

int initlist(linklist &l) //初始化單鏈表

//初始化了乙個空表

void createlist(linklist &l) //尾插法生成雙向迴圈鍊錶

void shuchulist(linklist &l) //遍歷有頭結點的雙向迴圈鍊錶

printf("%4d",p->data);

printf("\n");

}int lengthlist(linklist l)

return count;

資料結構之鍊錶基本操作的實現

實驗二 鍊錶基本操作的實現 實驗目的 1 理解單鏈錶類的定義 2掌握單鏈錶類成員函式的實現 3學會設計實驗資料驗證程式。實驗環境 計算機,window xp作業系統,vc 6.0 實驗內容 1 單鏈錶類的定義 template struct linknode鍊錶結點類的定義 e data資料域 li...

資料結構課程設計

指導書山東建築大學 電腦科學與技術學院 二 六年十二月 課程設計基本情況 課程名稱 資料結構課程設計 相關課程 c語言程式設計 visual c 程式設計 資料結構 適合專業 電腦科學與技術 網路工程 軟體工程 設計週數 2周 學分 2學分 開課學期 第4學期 開課單位 電腦科學與技術學院 一 課程...

資料結構課程設計

總結報告 專業軟體工程 班級軟體1007 學號 20103540 姓名 日期 2012.9.17 東北大學軟體學院 第一章需求分析 問題定義 實現乙個網上拍賣系統,根據需求描述和附加的框架 完成乙個網上拍賣系統。分析 整個系統執行於windows平台,是基於b s結構的商業應用程式,程式為使用者提供...