一、標頭檔案,每個結點包括資料和指標
#pragma once
#include
struct node
;class linlist
;
二、在cpp檔案中重新定義基本操作函式
#include
"stdafx.h"
#include
"linlist.h"
using namespace std;
linlist::linlist() //建構函式
void linlist::creatlist1(int n) //頭插入法建立鍊錶
}void linlist::creatlist2(int n) //尾插入法建立鍊錶
}int linlist::insert(int i, int e) //在i處插入e
if (!temp)//如果到鍊錶末尾,也就是text為空說明第i個元素不存在
else
}int linlist::delete(int i) //刪除i處的資料
if (!temp)
else
}int linlist::getdata(int i) //查詢第i個元素
if (!temp)
else
}int linlist::search(int obj) //查詢鍊錶中有無與obj匹配的資料項
if (temp ==
null)
else
}int linlist::listlength() //計算鍊錶長度
cout <<
"該鍊錶的長度為:"
<< j -
1<< endl;
return j;
}void linlist::display() //遍歷鍊錶
cout << endl;
}
三、測試主函式
int main()
四、程式執行結果
鍊錶實現及常用操作 C
單向鍊錶的節點包括 資料域 用於儲存資料元素的值。struct node 雙向鍊錶的節點包括 資料域 用於儲存資料元素的值。struct dnode p節點後插入值為i的節點 void insertnode node p,int i 當需要刪除乙個節點p時,只需要將p的前乙個節點的next賦為p n...
C 實現鍊錶操作
寫乙個類 要求 1 使用該類建立乙個物件 a a 之後,就自動建立了乙個單鏈表的頭 2 類中的函式 a 可以往單鏈表中新增乙個結點 b 可以將頭結點的後繼結點刪除 3 當物件出作用域的時候,自動釋放所有單鏈表的空間 4 列印方式 c cout cin 5 記憶體申請與釋放 new和delete 陣列...
C 實現鍊錶基本操作
前幾天找實習的時候,乙個面試官給我留了乙個題,做乙個鍊錶demo,要求實現建立 插入 刪除等操作。鍊錶是一種常見的資料結構,它是一種物理儲存單元上非連續 非順序的儲存結構,資料元素的邏輯順序是通過鍊錶中的指標鏈結次序實現的。鍊錶由一系列結點 鍊錶中每乙個元素稱為結點 組成,結點可以在執行時動態生成。...