刪除當前單鏈表節點(不能找到前乙個節點)

2021-10-10 20:21:07 字數 380 閱讀 9023

力扣上看到的乙個題,大概是寫乙個函式,這個函式的傳參值,是乙個單鏈表的某乙個節點,需要在鍊錶中刪除這個節點。不影響其他節點。

首先按照常理,應該是找到前乙個節點,並將前乙個節點指向下乙個指標的節點進行更改。

但是有問題,首先,這是乙個單鏈表,傳參值是要刪除的節點,也就是說找不到它的前乙個節點。

思路:首先,把要刪除的節點值改為下乙個節點值,這樣刪除下乙個節點,就可以解決這個問題

最後將最後乙個元素刪除。

單鏈表刪除節點

給定單向鍊錶的頭指標和乙個要刪除的節點的值,定義乙個函式刪除該節點。返回刪除後的鍊錶的頭節點。思路 刪除某個結點需要找到該結點的前乙個結點,由於單向鍊錶沒有指向前乙個結點的指標,所以不得不從頭指標開始遍歷鍊錶。顯然時間複雜度為o n 1 待刪除的節點不是尾節點的情況 首先把待刪除的節點的前乙個節點的...

單鏈表刪除重複節點

學後一年重看資料結構,確實難啊,搞了半天才搞明白這個小問題。include include include typedef char elemtype typedef struct node 結點型別定義 node,linklist linklist為結構指標型別 void createfromta...

如何找到單鏈表的中間節點

力扣p148 思路 借用兩個快慢不同的指標,開始的時候讓兩個指標都指向鍊錶第乙個結點的位置,然後,讓快指標一次走兩步,讓慢指標一次走一步。鍊錶結點個數為奇數個時 當快指標走到null前面乙個結點的時候,慢指標此時剛好指向鍊錶中間結點。鍊錶結點個數為偶數個時 當快指標走到null的時候,慢指標此時剛好...