141 環形鍊錶

2021-09-19 04:03:45 字數 719 閱讀 9562

給定乙個鍊錶,判斷鍊錶中是否有環。

為了表示給定鍊錶中的環,我們使用整數 pos 來表示鍊錶尾連線到鍊錶中的位置(索引從 0 開始)。 如果 pos 是

-1,則在該鍊錶中沒有環。

示例 1:

輸入:head = [3,2,0,-4], pos = 1 輸出:true 解釋:鍊錶中有乙個環,其尾部連線到第二個節點。

1.首先想到的是使用set儲存的每個元素在鍊錶的位置,遍歷之後查詢set即可。

2.學習其他人的思路,使用「龜兔賽跑」兩個指標來進行查詢,如果慢的能追到快的,說明有環,追不到說明閉環。

public boolean hascycle(listnode head) 

set.add(head);

head = head.next;

}return false;

}

修改後的**

public boolean hascycle(listnode head) 

}return false;

}

拿到題目之後先不著急寫,理清楚思路之後看能否優化,最終寫出來再和前輩們比較, 看自己差在什麼地方,理解他們得思路。繼續加油!努力!

141 環形鍊錶

給定乙個鍊錶,判斷鍊錶中是否有環。高階 你能否不使用額外空間解決此題?乙個快指標走兩步 乙個慢指標走一步 如果相遇就有環 不然沒環 class solution def hascycle self,head type head listnode rtype bool index1 head inde...

141 環形鍊錶

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

141 環形鍊錶

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