單鏈表的建立和一些操作

2021-08-25 19:15:41 字數 1383 閱讀 1231

個人建立的乙個類,實現單鏈表的基本操作,算是對資料結構知識的一點溫習...

#ifndef templist_h

#define templist_h

#include

#include

template

class node

node(t data,node* next1=null) //構造節點,指定元素和後繼結點

};template

class singlelinkedlist //單鏈錶類

;template

singlelinkedlist::singlelinkedlist()

template

singlelinkedlist::singlelinkedlist(t value,int n)}}

template

singlelinkedlist::~singlelinkedlist()

template

int singlelinkedlist::length()

return i;

}template

node* singlelinkedlist::insert(int i,t x)

else

q=new node(x,p->next);

p->next=q;

}return q;

}template

bool singlelinkedlist::remove(int i) //在i位置刪除元素

else}}

return false;

}template

t singlelinkedlist::update(int i,t a)

template

node* singlelinkedlist::getnode(int i)

return p;

}template

t singlelinkedlist::get(int i)

template

void singlelinkedlist::clear()

head=null;

}template

bool singlelinkedlist::isempty()

template

void singlelinkedlist::concat(singlelinkedlist&list)

p->next=list.head; //連線兩條單鏈表

}list.head=null; //設定單鏈表為空,否則執行錯

}#endif

單鏈表的一些操作

1 有頭結點方便對首元資料元素的刪除,插入操作。不帶頭結點要判斷是不是作用在首元,是就得改變頭指標指向。2 頭結點資料域可以存表長。head data k 1 取倒數第k個元素。兩遍。走一遍,定義兩個指標,先走乙個,使兩個之間相差k個位置,再一起移動,走得快的的走到空了,走得慢的的資料域就是指定元素...

單鏈表的一些常用操作

include include include define ok 1 define error 0 define true 1 typedef struct lnodelnode,linklist linklist是結構指標,在下面定義結構體指標的時候不能夠加 獲得單鏈表第i個位置處的元素,賦值給...

單鏈表的一些基本操作

本文主要介紹了單鏈表的初始化 頭插 頭刪 尾插 尾刪 查詢 指定位刪除 指定數刪除 指定位插入 銷毀 排序等.標頭檔案 ifndef linklist h define linklist h include include includetypedef int datatype typedef st...