單鏈表的實現

2021-09-27 01:58:38 字數 1603 閱讀 4196

定義單鏈錶類,建立帶頭結點的單鏈表(節點型別為整型資料),要求包含以下成員函式:

頭插法建立單鏈表(利用建構函式實現)

尾插法建立單鏈表(過載建構函式實現)

鍊錶的遍歷

按值刪除乙個節點

按位置刪除乙個節點

鍊錶的析構

輸入一組資料,以尾插法的形式建立單鏈表(0表示輸入結束)(構造第乙個鍊錶)

輸入一組資料,以頭插法的形式建立單鏈表(0表示輸入結束)(構造第二個鍊錶)

輸入要刪除元素的值(在尾插法建立的鍊錶中進行改操作)

輸入要刪除元素的位置(在尾插法建立的鍊錶中進行改操作)

輸出尾插法建立鍊錶的結果

輸出頭插法插法建立鍊錶的結果

輸出按值刪除之後鍊錶中剩餘的元素(若刪除的元素不存在,輸出error)

輸出按位置刪除之後鍊錶中剩餘的元素(若刪除的元素不存在,輸出error

1 2 3 4 5 0 

1 2 3 4 5 0

20

1 2 3 4 5

5 4 3 2 1

1 3 4 5

error

其實我是hi拒絕寫鍊錶的,陣列很簡單的就能實現了。

#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;

typedef long long ll;

typedef double ld;

const int inf=0x3f3f3f3f;

int i,j,k;

int n,m,t;

int x,y;

int u,v,w;

int ans,res,cnt,temp,sum;

struct node

;class linklist

;linklist::linklist()//頭插法

}linklist::linklist(int a,int n)//尾插法

p->next=null;

}void linklist::print()

}int linklist::delete_x(int x)

p=p->next;

}return 0;

}int linklist::delete_i(int i)

j++;

}return 0;

}linklist::~linklist()

}int main()

linklist wei(a,num);

linklist tou;

wei.print();

tou.print();

int temp1,temp2;

scanf("%d%d",&temp1,&temp2);

if(wei.delete_x(temp1))

else

if(wei.delete_i(temp2))

else

return 0;

}

單鏈表的實現

include includetypedef struct node 定義鍊錶 snode snode creat 建立鍊錶的函式 q next null return head int length snode head 測鍊錶的結點數 return i void display snode he...

單鏈表的實現

單鏈表夜市線性表的一種表現形式,乙個表節點由乙個資料空間和乙個指標域組成。指標域記錄下乙個結點的位址。鍊錶在插入,刪除功能中效率高。但是讀取某個結點的時候需要順序讀取。效率不如順序儲存形式。下面是一些鍊錶實現的 鍊錶.cpp 定義控制台應用程式的入口點。include stdafx.h define...

單鏈表的實現

單鏈表是資料結構中重要並且基礎的一環,學習資料結構就需要知道單鏈表有的常用操作。1 單鏈表的頭插式建立 2 單鏈表的尾插式建立 3 單鏈表的長度計算 4 單鏈表的列印輸出 5 單鏈表的釋放操作 6 單鏈表是否為空判斷 7 單鏈表在指定index插入指定元素 8 單鏈表刪除指定index的節點 9 單...