摘要:本文介紹循環鏈表和雙向鏈表的一些常用操作的實現。單循環鏈表的查找操作雙向鏈表的節點描述為雙向循環鏈表的插入操作雙向循環鏈表的刪除操作刪除第個節點
算法中常常會涉及循環鏈表和雙向鏈表這些特殊的鏈表,對于循環鏈表來說,從表中任意節點出發均可以找到其他節點,對于循環鏈表來說唯一的區別是循環結束的條件改為是否指向頭指針。本文介紹循環鏈表和雙向鏈表的一些常用操作的Java實現。
1.單循環鏈表的查找操作
public Lnode get(char x){ Lnode p = h.next; while(p!=null&&p.data!=x) p = p.next; if(p.data = x) return p; else return null; }
2.雙向鏈表的節點描述為:
public class DulNode{ char data; DulNode next; DulNode prior; }
3.雙向循環鏈表的插入操作
public int insert(DulNode h,int i,char x){ DulNode p = h.next; int j=1; while(p!=h&&j4.雙向循環鏈表的刪除操作,刪除第i個節點p
public char delete(int i){ DulNode p = h.next; int j = 1; if(p!=h&&j
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/68822.html
摘要:實際中更多是作為其他數據結構的子結構,如哈希桶圖的鄰接表等等。實際中使用的鏈表數據結構,都是帶頭雙向循環鏈表。 文章目錄 一.算法的時間復雜度和空間復雜度1.算法...
摘要:上一篇數據結構與算法棧隊列下一篇數據結構與算法集合字典寫在前面說明數據結構與算法系列文章的代碼和示例均可在此找到上一篇博客發布以后,僅幾天的時間竟然成為了我寫博客以來點贊數最多的一篇博客。 上一篇:JS數據結構與算法_棧&隊列下一篇:JS數據結構與算法_集合&字典 寫在前面 說明:JS數據結構與算法 系列文章的代碼和示例均可在此找到 上一篇博客發布以后,僅幾天的時間竟然成為了我寫博客以...
摘要:類表示要加入鏈表的項。循環鏈表和普通鏈表之間唯一的區別在于,最后一個元素指向下一個元素的指針不是引用,而是指向第一個元素。這里就不進行代碼實現了,大家可以結合上面的單向鏈表和雙向鏈表自己實現一個循環鏈表。 一、定義 1.1 概念 前面我們學習了數組這種數據結構。數組(或者也可以稱為列表)是一種非常簡單的存儲數據序列的數據結構。在這一節,我們要學習如何實現和使用鏈表這種動態的數據結構,這...
閱讀 1265·2021-09-27 13:35
閱讀 2563·2021-09-06 15:12
閱讀 3380·2019-08-30 15:55
閱讀 2829·2019-08-30 15:43
閱讀 432·2019-08-29 16:42
閱讀 3446·2019-08-29 15:39
閱讀 3062·2019-08-29 12:28
閱讀 1239·2019-08-29 11:11