Leetcode刷題(141 環形鍊錶)

2021-09-26 05:47:24 字數 1315 閱讀 2731

三.提交記錄

四.備註

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

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

示例 1:

輸入:head = [3,2,0,-4], pos = 1

輸出:true

解釋:鍊錶中有乙個環,其尾部連線到第二個節點。

輸入:head = [1,2], pos = 0

輸出:true

解釋:鍊錶中有乙個環,其尾部連線到第乙個節點。

輸入:head = [1], pos = -1

輸出:false

解釋:鍊錶中沒有環。

高階:你能用 o(1)(即,常量)記憶體解決此問題嗎?

方法一定義乙個陣列,類似於雜湊表儲存每一節鍊錶的位置,每次迴圈遍歷查詢是否已經存在陣列中,空間複雜度大。

方法二將迴圈過的鍊錶內容置空,下次迴圈時驗證內容,則可知是否存在迴圈。

141 環形鍊錶 LeetCode

給定乙個鍊錶,判斷鍊錶中是否有環。如果鍊錶中有某個節點,可以通過連續跟蹤 next 指標再次到達,則鍊錶中存在環。為了表示給定鍊錶中的環,我們使用整數 pos 來表示鍊錶尾連線到鍊錶中的位置 索引從 0 開始 如果 pos 是 1,則在該鍊錶中沒有環。注意 pos 不作為引數進行傳遞,僅僅是為了標識...

LeetCode題解 141 環形鍊錶

給定乙個鍊錶,判斷鍊錶中是否有環。高階 你能否不使用額外空間解決此題?輸入 1 no cycle,輸出false 輸入 1,2 no cycle,輸出false 輸入 3,0,2,4 tail connects to node index 1,輸出true.我們首先畫一下如果鍊錶存在環的情況,如下圖...

LeetCode筆記 141環形鍊錶

題目 給定乙個鍊錶,判斷鍊錶中是否有環。高階 你能否不使用額外空間解決此題?思路 我本來自己想的是在環形鍊錶中。每乙個節點的下乙個節點都不可能為空。若為空的話返回false 若不為空的話,繼續迴圈,知道迴圈次數等於鍊錶的個數。實際上鍊表中的節點個數並不已知,所以該方法不可以。然後就直接看了leetc...