單鏈表的實現

2021-08-29 20:24:30 字數 2111 閱讀 8414

typedef struct lnode

elemtype  data;

struct lnode  *next; 

}lnode,*linklist;

creatlist( l,n)

操作結果:構造乙個表長為n的鍊錶

deatroylist(l)

初始條件:單鏈表l已存在

操作結果:銷毀單鏈表

listempty(&l) 

初始條件:單鏈表l已存在

操作結果:若l->next指向null,則返回true,否則返回false

listlength(l) 

初始條件:單鏈表已存在

操作結果:返回l中資料元素的個數

listinsert(&l,i,e) 

初始條件:單鏈表已存在,1<= i <=listlength(l)+1

操作結果:在l中第i個位置之前插入新的元素e

listdelete(&l,i,&e)

初始條件:單鏈表已存在且非空,1<= i <=listlength(l)

操作結果:刪除l的第i個資料元素,並用e返回其值,釋放該結點

clearlist(&l)

初始條件:單鏈表已存在

操作結果:將l重置為空表

getelem(l,l,&e)

初始條件:單鏈表已存在,1<= i<=listlength(l)

操作結果:用e返回l中第i個資料元素的值

print(l)

初始條件:單鏈表已存在

操作結果:輸出l中的全部元素

//程式名稱:單鏈表的實現

//編譯環境:visual c++ 6.0

//最後修改日期:2018-10-21

#define ok 1

#define error 0

#define true 1

#define false 0

#include#includetypedef int status;

typedef int elemtype;

//定義單鏈表

typedef struct lnode

lnode,*linklist;

//建立鍊錶

void creatlist(linklist &l,int n)

}//銷毀鍊錶

status destroylist(linklist &l)

return ok;

}//判表空

status listempty(linklist &l)

//測表長

status listlength(linklist l)

//插入元素

status listinsert(linklist &l,int i,elemtype e)

if(!p||j>i-1)

return error;

linklist s;

s = (linklist)malloc(sizeof(lnode));

s->data = e;

s->next = p->next;

p->next = s;

return ok;

}//刪除元素

status listdelete(linklist &l,int i,elemtype &e)

if(!(p->next) || j > i-1)

return error;

q = p->next;

p->next = q->next;

e = q->data;

free(q);

return ok;

}//清空鍊錶

status clearlist(linklist &l)

//獲取元素

status getelem(linklist l,int i,elemtype &e)

if(!p||j>i)

return error;

e = p->data;

return e;

}//輸出元素

void print(linklist l)

}int main()

單鏈表的實現

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 單...