劍指offer第2版23題 鍊錶中環的入口結點

2021-08-21 06:31:23 字數 781 閱讀 5651

小渣渣的演算法學習筆記:2018秋招備戰

資料結構類演算法總結:鍊錶

1.題目描述:

乙個鍊錶中包含環,請找出該鍊錶的環的入口結點。

2.**實現:

public classsolution23 

}public static voidmain(string args)else

}//在鍊錶存在環的前提下找到環中的任意乙個結點

publiclistnode meetingnode(listnode head)

}return null;

}//求出環中的結點數目,找到環的入口結點

publiclistnode entrynodeofloop(listnode head)

//先移動pnode1,次數為環中結點個數

pnode1 = head;

for(inti=0;i < nodesinloop;++i)

//再移動pnode1和pnode2

listnode pnode2 = head;

while(pnode1 != pnode2)

returnpnode1;//返回環的入口結點

}}

劍指offer第14題 反轉鍊錶

定義乙個函式,輸入乙個鍊錶的頭節點,反轉該鍊錶並輸出反轉後鍊錶的頭節點。示例 輸入 1 2 3 4 5 null 輸出 5 4 3 2 1 null 限制 0 節點個數 5000 思路 新鍵乙個虛擬前驅節點,每次讓當前節點指向我們的上乙個前驅節點。就可以實現反向整個鍊錶了。其實並不難,鍊錶題自己多畫...

劍指Offer 第24題 反轉鍊錶

第24題 反轉鍊錶 題目 輸入乙個鍊錶,反轉鍊錶後,輸出新鍊錶的表頭。我的思路 建立鍊錶一般可分為頭插法和尾插法兩種方式,那麼這裡可以通過遍歷原鍊錶採用頭插法來建立新鍊錶。自己的low public class solution return head.next 優雅 public class so...

劍指Offer刷題 鍊錶

劍指 offer 18.刪除鍊錶的節點 難度簡單 給定單向鍊錶的頭指標和乙個要刪除的節點的值,定義乙個函式刪除該節點。返回刪除後的鍊錶的頭節點。注意 此題對比原題有改動 示例 1 輸入 head 4,5,1,9 val 5 輸出 4,1,9 解釋 給定你鍊錶中值為 5 的第二個節點,那麼在呼叫了你的...