雙向鍊錶**實現
//節點定義
@noargsconstructor
@tostring
public
class
node
public
node
(int value, string name)
}
//雙向鍊錶實現
public
class
doublelist
node cur = head;
while
(true
) cur = cur.next;}}
//以陣列形式形成雙向鍊錶
public
static node initbyarray
(int
arr)
else
}return head;
}//刪除節點
public
static node delete
(node node)
//如果刪除的是最後乙個節點
if(null == cur.next)
else
break;}
if(null == cur.next)
cur = cur.next;
}return head;
}//更新節點
public
static node update
(node node)
//如果為尾節點
if(null == cur.next)
else}if
(null == cur.next)
cur = cur.next;}}
public
static
void
reset()
資料結構之雙向鍊錶
簡述 指標域有乙個指標 而言,占用資源更大,但相應的 雙向鍊錶遍歷的時候只需要乙個指標就可以,而且 只有得到其中任何乙個節點就是得到整個鍊錶,單向鍊錶必須得到他的頭節點,才能遍歷整個鍊錶,而且得有兩個指標。實現 bothwaylinklist.h ifndef mymodule h define m...
資料結構之 雙向鍊錶
單鏈表的結點都只有乙個指向下乙個結點的指標。單鏈表的資料元素無法直接訪問其前驅元素。建立鍊錶 銷毀鍊錶 獲取鍊錶長度 清空鍊錶 獲取第pos個元素操作 插入元素到位置pos 刪除位置pos處的元素 dlinklist dlinklist creat 建立乙個鍊錶 void dlinklist des...
資料結構之雙向鍊錶
雙向鍊錶宛如一列火車,剛發明的時候只有乙個頭,如果它的行駛路線為 a b c d e f g h i j k a 這個時候有一批貨物需要從k運到j,那麼它的運輸路線一定是 k a b c d e f g h i j 所以後來火車就有了兩個頭,由此可見雙向鍊錶的重要性!雙向鍊錶 在單鏈表結點上增添了乙...