【LeetCode】83. Remove Duplicates from Sorted List(Easy)
【最初に】
LeetCode 6個目に挑戦です
【問題】
与えられたLinkedListから重複を排除せよ
Example 1:
Input: 1->1->2 Output: 1->2
Example 2:
Input: 1->1->2->3->3 Output: 1->2->3
【とりあえず】
ぱっと思いつくのは、前回の↓と同様にLinkedListをループで回して過去に調べた数字は可変長配列に保存しておき、重複した数字が出現した場合はnextを次の次のノードに書き換えるというもの。
できた!
【解答を見る】
どうやら問題のLinkedListはソートされている前提らしい。であれば、過去に調べた値をvectorに入れて比較せずとも、前の値と次の値を比較するだけで問題ない。
こちらのほうがvectorに値を保存しないので、空間計算量がO(n) → O(1) になる。
【最後に】
問題文の最初に"sorted"って書いてありました。
Given a sorted linked list,
よく読まないと.. ですね