雙向,指的是各節點之間的邏輯關係是雙向的,但通常頭指標只設定乙個,除非實際情況需要。
從圖 1 中可以看到,雙向鍊錶中各節點包含以下 3 部分資訊(如圖 1 所示):
指標域:用於指向當前節點的直接前驅節點;
資料域:用於儲存資料元素。
指標域:用於指向當前節點的直接後繼節點;
圖 1 雙向鍊錶的節點構成
typedef
struct node
node;
node*
invertlist
(node*
const head)
current->pprev = head;
//將最後乙個節點的前驅節點賦值為頭結點指標
head->pnext = current;
// 將頭結點與後續節點連線
return head;
}
雙向鍊錶的操作
include using namespace std 列印選項 void printtheselect typedef struct dulnode dulnode,dulinklist 初始化雙向鍊錶 void initdlist dulinklist l cout 雙向鍊錶構造完畢 n 列印雙...
雙向鍊錶的操作
摘自 雙向鍊錶是鍊錶的一種。它的每乙個結點都有兩個指標,乙個指向前乙個結點,乙個指向後乙個結點。因此可以從雙向鍊錶的任意結點開始可以很方便的訪問鍊錶的任意位置。雙向煉表示意圖 1 雙向鍊錶的刪除 2 雙向鍊錶的插入 在做刪除插入的時候,最好把圖畫出來。這樣思路就很清晰 1 package algor...
雙向鍊錶 基本操作
test.c define crt secure no warnings 1 include doubleslishtnode.h void test1 initdslist pushback printfdslist popback void test2 pushfront popfront vo...