자료구조

자료구조

[자료구조] 그래프(Graph)

1. 그래프란 정점(Vertex)와 간선(Edge)로 이루어진 자료구조를 말한다. 실제의 현상이나 사물의 정점(Vertex 또는Node)와 간선(Edge)으로 표현하기 위해 사용한다. 예) 집에서 회사로 출근하는 경로, 지하철 노선도의 최단 경로 등 2. 용어 정리 노드(Node) : 위치(정점 - Vertex) 간선(Edge) : 위치 간의 관계를 표시한 선(노드를 연결한 선)(== link, branch) 인접 정점(Adjacent Vertex) : 간선으로 직접 연결된 정점 정점의 차수(Degree) : 무방향 그래프에서 하나의 노드에 인접한 정점의 수 진입 차수(In-Degree) : 방향 그래프에서 외부에서 오는 간선의 수 진출 차수(Out-Degree) : 방향 그래프에서 외부로 향하는 간선의..

자료구조

[자료구조] 트리(Tree)

1. 트리(Tree)란 트리 : 노드(Node)와 가지(Branch)를 이용, 사이클을 이루지 않도록 만든 데이터 구조 2. 트리 용어 노드(node) : 다른 연결된 노드에 대한 정보와 데이터를 저장하고 있는 트리의 기본 요소 루트(root) : 최상위 노드 레벨(level) : 루트를 level 0, 가지가 아래로 하나씩 뻗어나갈 때마다 1씩 증가 부모 노드(parent node): 어떤 노드의 상위 레벨에 연결된 노드 자식 노드(child node) : 어떤 노드에서 연결된 아래쪽 노드(다음 레벨에 연결된 노드) 형제 노드(sibling) : 동일한 부모 노드를 가진 노드 리프(leaf) : 자식 노드가 하나도 없는 노드(가장 아래에 위치하는 노드) 차수(degree) : 트리에서 노드가 가진 자식..

자료구조

[자료구조] 해시(Hash)

1. 해시(Hash)란 해시 함수(hash)란 임의이 길이의 데이터를 고정된 길이의 데이터로 리턴하는 함수 Division기법 : %연산을 통해 나머지를 사용하여 key주소(인덱스) 계산 해시 테이블이란 key, value로 매핑할 수 있는 데이터 구조로 key값 연산에 의해 직접 접근이 가능한 구조 해시 알고리즘, 해싱이란 해시 함수를 사용해 데이터를 해시 테이블에 저장하고 다시 그것을 검색하는 알고리즘 자바에서 해시 알고리즘을 이용한 자료구조는 배열과 LinkedList를 이용함 저장할 데이터의 키 값을 해시 함수에 넣고 → 반환되는 값은 배열의 인덱스 → 해당 인덱스에 저장된 LinkedList에 저장 → 해시코드 == 배열 인덱스 → 한번에 빠르게 찾아갈 수 있음 2. 해시 테이블 1) 장점과 단..

github.com/hyunbenny/study
'자료구조' 태그의 글 목록