본문 바로가기
스터디-공부/알고리즘

정렬되어있지 않은 연결리스트의 중복 없애기

by jonghoonpark 2023. 8. 23.

중복 없애기: 정렬되어있지 않은 연결리스트가 주어졌을 때 이 리스트에서 중복되는 원소를 제거하는 코드를 작성하라 (+ 임시 버퍼를 사용할 수 없다면 어떻게 풀 수 있을까?)

문제를 듣고 바로 든 생각

  • Set을 이용하여 풀 수 있지 않을까?
  • 임시 버퍼가 없다면 반복문 2개로 해결할 수 있지 않을까?

해결 코드는 따로 적지 않는다.

 

python에서 LinkedList를 구현 위한 Node Class 정의하기.

아래와 같이 Class를 정의 할 수 있다.

class Node:
    def __init__(self, val=0, next=None):
        self.val = val
        self.next = next

정의된 Node Class는 아래와 같이 사용할 수 있다.

node2 = Node(2)
node1 = Node(1, node2)
head = Node(0, node1)

'스터디-공부 > 알고리즘' 카테고리의 다른 글

리스트의 합  (0) 2023.08.25
단방향 연결리스트의 중간 노드 삭제  (0) 2023.08.24
문자열 회전  (0) 2023.08.22
행렬 90도 회전  (0) 2023.08.21
문자열 매칭 수 계산  (0) 2023.08.19

댓글