1.單鏈表
鍊錶是最基本的資料結構,其儲存的你原理圖如下圖所示
鍊錶的增加操作
鍊錶的刪除
鍊錶的插入:
1、頭插法:每次把新插入的節點當著頭結點;
2、尾插法:每次把新插入的節點放在尾部;
3、指定位置插入法:每次在指定位置插入某個節點。
鍊錶的刪除:
刪除指定位置上的某個節點
鍊錶的查詢:
1、根據節點位置查詢該節點;
2、根據節點查詢節點存放的位置
編寫node類
public
class
nodedemo
public
node
(t data, node next)
}private node head;
//鍊錶的頭結點
private node tail;
//鍊錶的尾節點
int size;
public
nodedemo()
public
nodedemo
(t data)
在尾部插入
public
void
addtailnode
(t element)
else
size++
;}
在頭部插入
public
void
addheadnode
(t element)
}
在指定位置插入
public
void
addindexnode
(t element,
int index)
else
else
}}
根據結點查詢節點存放的位置
public
intfindindexbynode
(t element)
current = current.next;
index++;}
return-1
;}
根據節點位置刪除指定位置的節點
public t deletenode
(int index)
if(index ==0)
else
return dnode.data;
}
清空鍊錶
public
void
clear()
判斷鍊錶是否為空
public
boolean
isempty()
列印鍊錶
public string tostring()
return sb.
tostring()
;}
測試
public
static
void
main
(string[
] args)
資料結構與演算法 單鏈表(一)
單鏈表的頭插法,插入時就是逆序。insertlist 還不完善。include include define error 0 define ok 1 typedef int status typedef int elemtype typedef struct nodenode typedef str...
單鏈表(演算法與資料結構)
鍊錶 單鏈表 為每個結點新增1個指標域,每個結點包括兩個域 資料域 存放元素本身資訊 指標域 存放後繼結點的儲存位置 指向鍊錶中第乙個結點的指標,稱為這個鍊錶的頭指標。最後乙個元素的指標不指向任何結點,稱為空指標,圖示中用 表示,在演算法中用 null 表示 帶頭結點的單鏈表 頭結點 可以不存資訊,...
資料結構與演算法 單鏈表
鍊錶是有序的列表,但是它在記憶體中是儲存如下 鍊錶是以節點的方式來儲存的 鍊錶的各個節點不一定是連續儲存的 鍊錶分帶頭結點的鍊錶和不帶頭結點的鍊錶 新增先建立乙個 head 頭結點,作用就是表示單鏈表的頭 後面我們每新增乙個結點,就直接加入到鍊錶的最後 遍歷 通過乙個輔助變數,幫助來遍歷整個鍊錶 第...