* 雙端鍊錶,
* 一、什麼是雙鏈表
* 鍊錶中儲存著對最後乙個鏈結點引用的鍊錶
* 二、從頭部進行插入
* 要對鍊錶進行判斷,如果為空則設定尾結點為新新增的結點
* 三、從尾部進行插入
* 如果鍊錶為空,則直接設定頭結點為新新增的結點,否則設定尾結點的後乙個結點為新新增結點
* 四、從頭部進行刪除
* 判斷頭部結點是否有下乙個結點,如果沒有則設定結點為null
package com.algorithm;
/** * 雙端鍊錶,
* 一、什麼是雙鏈表
* 鍊錶中儲存著對最後乙個鏈結點引用的鍊錶
* 二、從頭部進行插入
* 要對鍊錶進行判斷,如果為空則設定尾結點為新新增的結點
* 三、從尾部進行插入
* 如果鍊錶為空,則直接設定頭結點為新新增的結點,否則設定尾結點的後乙個結點為新新增結點
* 四、從頭部進行刪除
* 判斷頭部結點是否有下乙個結點,如果沒有則設定結點為null
* @author lenovo
*/public class firstlastlinklist
/*** 插入乙個結點,在頭結點插入
*/public void insertfirst(long value)
node.next = first;
first =node; }
/*** 插入乙個結點,在尾結點插入
*/public void insertlast(long value)else
last =node; }
/*** 刪除乙個結點,在頭結點刪除
*/public node deletefirst()
first=node.next;
return node; }
/*** 顯示方法
*/public void display()
system.out.println(); }
/*** 查詢方法
* @param value
* @return
*/public node find(long value)
current = current.next;
} return current; }
/*** 刪除方法,根據資料域刪除
* @param value
* @return
*/public node delete(long value)
previous=current;
current = current.next;
}if(current == first) else
return current; }
/*** 判斷是否為空
* @return
*/public boolean isempty()
public static void main(string args)
}
雙端鍊錶 雙向鍊錶(java)
1 雙端鍊錶 2 測試雙端鍊錶 3 雙向鍊錶 4 測試雙向鍊錶 1 雙端鍊錶 package com.cwq.ch05 import com.cwq.ch04.node 雙端鍊錶,將資料串起來 author carpoor date 2019年1月29日 public class myfirstla...
Java單鏈表(雙端鍊錶)簡單實現
1 節點資料結構 public class linknode public linknode int value 2 單鏈表實現 public class singlelink public void insertfirst int value else public intdeletefirst ...
Java資料結構之鍊錶 雙端鍊錶
鍊錶 linked list 是一種常見的基礎資料結構,是一種線性表,但是並不會按線性的順序儲存資料,而是在每乙個節點裡存到下乙個節點的指標 pointer 使用鍊錶結構可以克服陣列鍊錶需要預先知道資料大小的缺點,鍊錶結構可以充分利用計算機記憶體空間,實現靈活的記憶體動態管理。但是鍊錶失去了陣列隨機...