資料結構09 雙向鍊錶(增刪該查)

2021-10-01 17:19:00 字數 1595 閱讀 2817

/** * 新增節點到最後的方法

*/public

void

add(heronode heronode)

//如果沒有找到最後,將temp後移

temp= temp.next;

}//退出white迴圈時,temp就指向了鍊錶的最後

temp.next = heronode;

heronode.pre = temp;

}/**

* 修改雙向鍊錶的方法

*/public

void

update

(heronode newheronode)

//找到需要修改的節點

//定義乙個輔助變數

heronode temp = head.next;

boolean flag =

false

;//表示是否找到該節點

while

(true)if

(temp.no==newheronode.no)

temp = temp.next;

}//根據flag判斷是否找到要修改的節點

if(flag)

else

}/**

* 刪除節點

*/public

void

delete

(int no)

heronode temp = head.next;

boolean flag =

false

;while

(true)if

(temp.no==no)

temp = temp.next;

}//判斷falg

if(flag)

}else

}/**

* 遍歷雙向鍊錶的方法

*/public

void

list()

//因為頭節點不能動,因襲需要乙個輔助變數來遍歷

heronode temp = head.next;

while

(true

)//輸出節點的資訊

system.out.

println

(temp)

;//將temp後移

temp = temp.next;}}

}//建立乙個雙向鍊錶的類

資料結構四雙向鍊錶

雙向鍊錶也叫雙鏈表,是鍊錶的一種,它的每個資料結點中都有兩個指標,分別指向直接後繼和直接前驅。所以,從雙向鍊錶中的任意乙個結點開始,都可以很方便地訪問它的前驅結點和後繼結點。而之前的單鏈表為單向鍊錶,雙向鍊錶也就是在單鏈表的結點中增加乙個指向其前驅的pre指標。如圖 這裡介紹雙向鍊錶的常用操作 l ...

資料結構 003雙向鍊錶

雙鏈表 include using namespace std typedef int elemtype typedef struct lnode lnode,linklist 初始化 linklist init linklist 頭插法建立鍊錶 linklist head insert linkl...

資料結構基礎 1 雙向鍊錶

linklist.h ifndef link list h define link list h 1 include include include struct stu struct stu initlist struct stu head void destroylist struct stu ...