單鏈表含環的各種面試題

判斷鏈表是否帶環?若帶環求環的長度?若帶環求環的入口點?

  1. 用快慢指針求是否帶環?快慢指針相遇則帶環
  2. 設相遇點爲meet,求環長度,只需要設置p指針指向meet,設置count,循環的時候++count,直到p指向meet得出環長度
  3. 如下圖:

這裏寫圖片描述

也可以用map/hash_map遍歷,一旦遇到某個結點出現兩次即爲入口

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章