給你乙個鍊錶的頭節點 head,請你編寫**,反覆刪去鍊錶中由 總和 值為 0 的連續節點組成的序列,直到不存在這樣的序列為止。
刪除完畢後,請你返回最終結果鍊錶的頭節點。
你可以返回任何滿足題目要求的答案。
(注意,下面示例中的所有序列,都是對 listnode 物件序列化的表示。)
示例 1:
輸入:head = [1,2,3,-3,4]
輸出:[1,2,4]
示例 3:
輸入:head = [1,2,3,-3,-2]
輸出:[1]
給你的鍊錶中可能有 1 到 1000 個節點。
對於鍊錶中的每個節點,節點的值:-1000 <= node.val <= 1000.
解答1:
publicview codestatic
listnode removezerosumsublists(listnode head)
/*不為0時h2向後移動
*/h2=h2.next;
/*加上h2的值
*/sum+=h2.val;
}/*當sum不為0時向後移動,為0時已經賦過值了,不向後移動
*/if(sum!=0)
}return
dumb.next;
}
1171 從鍊錶中刪去總和值為零的連續節點
給你乙個鍊錶的頭節點 head,請你編寫 反覆刪去鍊錶中由 總和 值為 0 的連續節點組成的序列,直到不存在這樣的序列為止。刪除完畢後,請你返回最終結果鍊錶的頭節點。你可以返回任何滿足題目要求的答案。注意,下面示例中的所有序列,都是對 listnode 物件序列化的表示。示例 1 輸入 head 1...
從單向鍊錶中刪除指定值的節點
輸入乙個單向鍊錶和乙個節點的值,從單向鍊錶中刪除等於該值的節點,刪除後如果鍊錶中無節點則返回空指標。鍊錶結點定義如下 struct listnode 詳細描述 本題為考察鍊錶的插入和刪除知識。鍊錶的值不能重複 構造過程,例如 1 2 3 2 5 1 4 5 7 2 最後的鍊錶的順序為 2 7 3 1...
從單向鍊錶中刪除指定值的節點
輸入乙個單向鍊錶和乙個節點的值,從單向鍊錶中刪除等於該值的節點,刪除後如果鍊錶中無節點則返回空指標。鍊錶結點定義如下 struct listnode int m nkey listnode m pnext 詳細描述 本題為考察鍊錶的插入和刪除知識。鍊錶的值不能重複 構造過程,例如 1 2 3 2 5...