鍊錶實現建立 插入 刪除 求鏈長等操作

2021-10-24 00:18:32 字數 1137 閱讀 3111

#include

#include

using namespace std;

#define error  0

#define ok 1

typedef char elemtype;   // 根據實際情況定義資料元素型別 

typedef int status;

typedef struct lnode

lnode,* linklist;

//建立乙個鍊錶

void createlist_l(linklist &l,int n)

}int  listlength_l(linklist l)   // 求鍊錶的長度 length的演算法

return len;

}void printlist_l(linklist l)     //列印鍊錶演算法

//插入元素演算法

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;

} //主函式

int main()

printlist_l(l);

cout<<"\n"

printlist_l(l);

int len=listlength_l(l);

cout<<"\n"

}

雙向迴圈鍊錶的建立 查詢 插入 刪除和遍歷等操作

雙向迴圈鍊錶的建立 查詢 插入 刪除和遍歷等操作 ifndef dlinklist h define dlinklist h include include typedef int datatype typedef struct double link node dlk,dplk extern vo...

c 實現鍊錶建立 插入 刪除

使用類模板設計的鍊錶建立 插入 刪除操作。類模板不懂的,可以看下我的template簡單介紹 建立鍊錶實際就是將struct結構體或者class類物件連線在一起 鍊錶插入如圖示 使用的是頭插法 鍊錶刪除操作 上 include include include include using namesp...

鍊錶建立 插入 刪除

這兩天,拼命理解鍊錶,儘管現在理解還是不夠,但終於把長久以來一直折磨我的鍊錶用c 打出來了。還是有點小小的成就感。以下是 包括鍊錶建立 頭插法和尾插法 插入乙個位置的鍊錶 刪除乙個位置的鍊錶以及整個鍊錶的刪除。define null 0 include using namespace std int...