꾸준히 재밌게
728x90
728x90
article thumbnail
[자료구조] 해시테이블 (hashtable)
CS/자료구조 2023. 5. 29. 06:29

해시테이블 (hashtable) Key, Value 로 데이터를 저장하는 자료구조 중 하나이며 데이터를 빠르게 검색할 수 있는 자료구조이다. 빠른 검색을 할 수 있는 이유는 내부적으로 버킷(배열)을 사용하여 데이터를 저장하기 때문이다. 해시 테이블은 각각의 Key값에 해시함수를 적용해 배열의 고유한 index를 생성하고, 이 index를 활용해 값을 저장하거나 검색하게 된다. 여기서 실제 값이 저장되는 장소를 버킷 또는 슬롯이라고 한다. (Key, Value)가 ("Becca", "+1 424 999 0000")인 데이터를 해시 테이블에 저장한다고 할 때, index = hash_function("Becca") % Index을 통해 Index값을 계산한 뒤, array[Index] = "+1 424 99..

article thumbnail
[자료구조] 트리(Tree) 구조
CS/자료구조 2023. 1. 17. 19:32

트리구조란? 한 노드에서 시작해서 다른 정점들을 순회하여 자기 자신에게 돌아오는 순환이 없는 연결그래프이다. 회사의 조직도 내 컴퓨터\C:\Program Files\..... 트리 용어 용어 설명 루트(root) 노드 맨 위에 위치한 노드이며, 부모노드 라고 함 리프(leaf) 노드 자식이 없는 최하단 노드, 단말(terminal) 노드 라고도 함 내부(internal) 노드 리프노드가 아닌 노드, 가지(branch) 노드 라고도 함 간선/엣지/링크/브랜치 노드들끼리의 연결선 노드의 차수 한 노드가 가진 서브트리의 차수 트리의 차수 트리노드들의 차수 중 최대차수 서브트리(sub-tree) 트리에서 어떤 한 노드와 그 노드의 자손들로 이루어진 트리 레벨(level) 0이나 1부터 시작하며 높이를 정의함 높..

728x90
728x90