雙向鍊錶也叫頭尾鍊錶,頭尾鍊錶可以在頭結點和尾結點分別進行插入和刪除操作
首先建立結點類,**如下:
package firstlastlist;
public
class
node
public
void
display()
}
操作**:
package firstlastlist;
public
class
firstlastlist
public
boolean
isempty()
public
void
insertfirst
(int value)
node.next=first;
first=node;
}public
void
insertlast
(int value)
else
last=node;
}public
intdeletfirst()
node temp=first;
first=first.next;
//把後面的結點往前移進行刪除,最後剩乙個結點時first和last均為null
return temp.data;
}public
void
display()
//當t的下乙個結點為null時,此時t到了尾結點,然後跳出迴圈,列印尾結點
t.display()
;;}public node chazhao
(int value)
tt=tt.next;
}return tt;
}public node shangchu
(int value)
ty=tt;
tt=tt.next;}if
(tt==first)
else
return tt;
}}
測試**:
package firstlastlist;
public
class
testfirstlastlist
}
執行結果如下所示:32
資料結構之雙向鍊錶
簡述 指標域有乙個指標 而言,占用資源更大,但相應的 雙向鍊錶遍歷的時候只需要乙個指標就可以,而且 只有得到其中任何乙個節點就是得到整個鍊錶,單向鍊錶必須得到他的頭節點,才能遍歷整個鍊錶,而且得有兩個指標。實現 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 所以後來火車就有了兩個頭,由此可見雙向鍊錶的重要性!雙向鍊錶 在單鏈表結點上增添了乙...