/*
鏈式儲存:不要求邏輯上相鄰的元素在物理位置上也相鄰,
摒棄順序儲存結構上的缺點,但也失去了順序表隨機訪問的優點。
單鏈表:只含有乙個指標域,頭指標沒有資料域,尾指標的指標域為空。
*///--------線性表的單鏈表儲存結構---------
#include#include#define ok 1
#define error 0
typedef int elemtype;
typedef int status;
typedef struct lnode lnode,*linklist;
//建立單鏈表:(1)頭插法,(2)尾插法。
void creatlist_head_insret(linklist &l,int n)
printf("頭插法逆序建立單鏈表");
}//逆序建立單鏈表。
void creatlist_end_insert(linklist &l,int n)
printf("尾插法順序建立單鏈表");
}status getelem_l(linklist l,int i,elemtype &e)
if(!p||j>i) return error;
e=p->data;
return ok;
}//插入演算法
status listinsert_l(linklist &l,int i,elemtype e)
if(!p||j>i-1) return error;
s=(linklist)malloc(sizeof(lnode));
s->data=e;
s->next=p->next;
p->next=s;
return ok;
}//刪除演算法
status listdelete_l(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;
}void print(linklist &l)
printf("\n");
}void main()
資料結構 線性表 單鏈表
本文只要實現單鏈表的初始化 插入 尾插 頭插 任意位置插入 刪除 尾刪 頭刪 刪除指定元素 查詢等。定義單鏈表 typedef int datatype typedef struct linknode linknode,plinknode,plist 實現單鏈表的所有介面 void initlink...
資料結構 線性表 單鏈表
資料結構 線性表的鏈式表示 單鏈表 線性表元素序號從1算起 date 2017 4 13 include include define initsize 100 define elemtype char typedef struct lnodelnode,linklist linklist crea...
資料結構 線性表 單鏈表
include include 結構體的定義和數序表的定義 typedef int elemtype typedef struct node node 函式的宣告 void initnode node h int addnode node h,elemtype e void deletenode n...