鍊錶常用操作 C 實現

2021-08-26 02:41:52 字數 1367 閱讀 8892

一、標頭檔案,每個結點包括資料和指標

#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,要求實現建立 插入 刪除等操作。鍊錶是一種常見的資料結構,它是一種物理儲存單元上非連續 非順序的儲存結構,資料元素的邏輯順序是通過鍊錶中的指標鏈結次序實現的。鍊錶由一系列結點 鍊錶中每乙個元素稱為結點 組成,結點可以在執行時動態生成。...