鍊錶 環形鍊錶

2021-08-19 18:25:30 字數 1448 閱讀 1115

環形鍊錶也叫迴圈鍊錶(可以是雙鏈表、也可以是單鏈表),操作原理和單鏈表差不多,只是最後乙個節點不在指向空(null)而是頭(head),這裡以單鏈表舉例:

* @description 環形鍊錶

* @author lzq

* @date 2018/11/3 20:46

* @version 1.0

**/public class annular

public entry(int data)

}private entry head = new entry(); //頭節點,列表首指標

/*** 頭結點的初始化

*/public annular()

/*** 判斷鍊錶是否為空

* @return

*/public boolean isempty()else

}/**

* 頭插法

* @param val

*/public void inserthead(int val)

entry.next = this.head.next;

this.head.next = entry;

}/**

* 尾插法

* @param val

*/public void inserttail(int val)

entry.next = cur.next;

cur.next = entry;

}/**

* 刪除乙個元素

* @param data

*/public void deleteentry(int data)

entry p1 = head;

entry p2 = head.next; //前指標

/*while(p2.data!=data)

p1.next=p2.next;

}*/while(p2 != this.head) else }}

/*** 得到鍊錶的長度

* @return

*/public int getlength()

entry pwd = head;

int length = 0;

while(pwd.next != head)

return length;

}/**

* 輸出鍊錶

*/public void show()

entry cur = this.head.next;

while(cur != this.head)

system.out.println();}}

鍊錶 環形鍊錶

題目描述 給定乙個鍊錶,返回鍊錶開始入環的第乙個節點。如果鍊錶無環,則返回 null。為了表示給定鍊錶中的環,我們使用整數 pos 來表示鍊錶尾連線到鍊錶中的位置 索引從 0 開始 如果 pos 是 1,則在該鍊錶中沒有環。注意,pos 僅僅是用於標識環的情況,並不會作為引數傳遞到函式中。說明 不允...

環形鍊錶 鍊錶

題目 給定乙個鍊錶,判斷鍊錶中是否有環。為了表示給定鍊錶中的環,我們使用整數pos來表示鍊錶尾連線到鍊錶中的位置 索引從 0 開始 如果pos是 1,則在該鍊錶中沒有環。示例 1 輸入 head 3,2,0,4 pos 1 輸出 true 解釋 鍊錶中有乙個環,其尾部連線到第二個節點。示例 2 輸入...

鍊錶 環形鍊錶 II

給定乙個鍊錶,返回鍊錶開始入環的第乙個節點。如果鍊錶無環,則返回null。說明 不允許修改給定的鍊錶。高階 你是否可以不用額外空間解決此題?definition for singly linked list.class listnode public class solution start p1 ...