\
[알고리즘] Union-Find
·
Algorithm/개념
개념 그래프 이론으로, 상호 배타적 집합(서로소집합:Disjoint-Set) 알고리즘이라고도 부름 주로 크루스칼(Krusckal) 알고리즘에서 사용하며, 순환하지 않는 트리 를 만들기 위해 사용 단계별로 이해하기 만약 아래 표와 같이 4개의 노드를 가진 서로소 집합이 있다면, 노드 번호 1 2 3 4 대표 번호 1 2 3 4 1번과 2번이 같은 집합이라면? 대표번호를 변경하여 같은 집합을 표현할 수 있음 Union 결과 노드 번호 1 2 3 4 대표 번호 1 1 3 4 아래 표와 같이 있을 때 2번은 어떤 집합에 있는지 알 수 없을까? 노드 번호 1 2 3 4 대표 번호 1 3 4 1 노드 번호를 따라가며 확인할 수 있음 2번 👉 3번 👉 4번 👉 1번 (모두 같은 집합) Find 다른 표현 노드 번호 ..
[자료구조] 선형구조, 비선형구조
·
Algorithm/개념
자료 구조 자료구조(資料構造, 영어: data structure)는 컴퓨터 과학에서 효율적인 접근 및 수정을 가능케 하는 자료의 조직, 관리, 저장을 의미하며, 더 정확히 말해, 자료 구조는 데이터 값의 모임, 또 데이터 간의 관계, 그리고 데이터에 적용할 수 있는 함수나 명령을 의미한다 신중히 선택한 자료구조는 보다 효율적인 알고리즘을 사용할 수 있게 한다. 위키백과-자료구조 선형 구조(Linear Structure) 자료와 자료의 관계가 1:1의 관계를 갖는다. 쉽게 말하면 자료를 순차적으로 나열한 형태 비선형 구조(Non-Linear Structure) 자료와 자료의 관계가 1:N(1대 다)의 관계를 갖는다. 쉽게 말하면 자료 안에 여러 자료가 들어간 형태