單端鍊錶的實現

2021-07-25 07:27:52 字數 1292 閱讀 5219

//節點,乙個鍊錶的組成部分,就像陣列是由記憶體上一段位址連續的空

//間組成一樣,鍊錶是由一系列節點組成的。這些節點包含兩個部分

//乙個是元資料部分,類似於陣列中的儲存資料,即a[0]這種樣式表示的

//資料,乙個是對下乙個節點的引用next,類似於陣列中的下標,唯一

//指定乙個鍊錶中的資料的儲存位置;

public class nodetest //測試方法,用來直觀顯示鍊錶的儲存資料

public void display()

}

好了,以上就是乙個節點類,看起來很簡單;下面是鍊錶的實現。
/**

* 單端鍊錶,即只能從頭至尾遍歷

* @author dishihua

* * @param 泛型

*/ public class linktest

public boolean isempty()

}/**

* 新增乙個節點

* @param data,儲存節點資料

*/public void insertnode(t data)

/** * 此方法將刪除鍊錶的頭節點

*/public void deletefirst()

}/**

* 此節點依照節點資料查詢指定節點

* @param data,要查詢的節點包含的資料

* @return

*/public nodetestfindbykey(t data)

node = node.next;

}return node;

}/**

* 此節點依照節點包含的資料刪除指定節點,當存在重複資料時,僅會刪除乙個資料

* @param data 要刪除的節點包含的資料

*/public void deletebykey(t data)else

}if(node.equals(current))else

}public void show()

}/**

* 在指定的節點後新增乙個節點,存在重複時僅在符合條件的第乙個節點後新增

* @param data 要新增的節點的資料

* @param key 指定的節點的資料

*/public void insertafter(t data ,t key)

//如果指定的節點是鍊錶的頭節點,要特殊處理

if(nownode.equals(current))else

}public static void main(string args)

Java單鏈表(雙端鍊錶)簡單實現

1 節點資料結構 public class linknode public linknode int value 2 單鏈表實現 public class singlelink public void insertfirst int value else public intdeletefirst ...

雙端鍊錶的java實現

雙端鍊錶,一 什麼是雙鏈表 鍊錶中儲存著對最後乙個鏈結點引用的鍊錶 二 從頭部進行插入 要對鍊錶進行判斷,如果為空則設定尾結點為新新增的結點 三 從尾部進行插入 如果鍊錶為空,則直接設定頭結點為新新增的結點,否則設定尾結點的後乙個結點為新新增結點 四 從頭部進行刪除 判斷頭部結點是否有下乙個結點,如...

鍊錶的實現 單鏈表 雙鏈表

鍊錶知識的引入 對於之前我們接觸到的陣列知識,要想儲存多個物件,首先想到的一定是物件陣列。但是陣列是乙個長度固定的線性結構,一旦內容不足或者過多,都會在成記憶體資源的浪費,由此引入鍊錶充分解決資源浪費問題。class node private屬性需要設定getter setter方法 public ...