Cracking the Coding Interview
-
CTCI | 중복 없애기Algorithm/Linked List 2024. 4. 2. 16:03
Cracking the Coding Interview 문제: 정렬되어있지 않은 Linked List에서 중복되는 원소를 제거하는 코드 작성하기 우선 Linked List의 특징은, head에 대한 포인트를 갖고 시작한다는것과, 사이즈가 얼마나 될지 알지 못한다는 것이다. 이 문제를 풀 수 있는 가장 간단한 방법은, Set을 사용해서 지금까지 등장한 원소들을 저장해가면서, 만약 Set에 없다면, Set에 추가하고 넘어가고, 만약, Set에 존재한다면, 그 해당 노드를 건너뛰는 방식으로 진행할 수 있다. 여기서 또 한가지 생각해야하는것은 Deletion과 Edge케이스이다. 먼저, Delete를 어떻게 해나갈지, LinkedList를 그려가며 생각해보자. head 노드에서 2번 이동한 노드가, 중복 노드라고..