728x90
반응형
SMALL

2024/04/16 3

Hash Table

Hash Table은 Key/Value Pair를 빠르게 저장하고 읽을 수 있는 자료구조이다. 파이썬에서 Dictionary라고 부르는 것이 이 Hash Table이다. 예를 들어, Key: Food, Value: Kimchi를 Hash Table에 저장하고자 하면 Hash Table한테 Key가 Food고 Value가 Kimchi인 이 Pair를 저장해 줘! 하고 저장을 한 다음 이후에 Food라는 Key의 Value가 어떻게 돼?라고 물어보면 Hash Table이 Kimchi입니다라고 말해주는 자료구조. Hash Table의 구현 원리 이름 그대로 Table(배열)과 Hash Function으로 구성되어 있다. Hash Function은 임의의 길이를 갖는 임의의 데이터를 고정된 길이의 데이터로 매핑..

자료구조 2024.04.16

Binary Search Tree

Binary Search Tree는 진짜 중요한 개념이다.Binary Tree를 저번 시간에 배웠고 이 Binary Tree를 다시 상기해보면 자식이 최대 2개까지만 있는 노드로만 구성되어 있는 트리를 Binary Tree라고 했고 이 트리를 탐색하는 방법 중 대표적인 두 가지 DFS, BFS가 있다고 했다. DFS(Depth First Search)는 깊이 우선 탐색으로 밑으로 더 내려갈 수 없을때까지 계속 아래로 찾아나가는 방식. BFS(Breadth First Search)는 한 노드의 모든 라인을 다 검색하고 그 바로 다음 아래 라인을 다 검색해가면서 찾아내는 방식이라고 했다. Binary Search TreeBinary Search Tree는 Binary Tree에 특정한 룰을 추가한 트리구조이..

자료구조 2024.04.16

Tree와 BFS / DFS

우선 BFS, DFS를 알기 전 Tree를 알아야 하는게 먼저더라. Tree 트리란, 부모 자식 관계를 나타낼 수 있는 자료 구조다. 다음 그림이 트리라고 말 할 수 있다. - 노드 하나에 한개의 Parent 노드가 있을 수 있다. - 노드 하나에 여러개의 Child 노드가 있을 수 있다. 이런 유형의 자료구조는 실생활에서도 너무 많이 접해볼 수 있다. 회사 조직도 가족 관계도 File System 이런 트리 중 특별한 트리가 있는데 'Binary Tree'라는 게 있다. Binary Tree 한 노드에 Child 노드가 최대 2개까지만 있는 트리를 Binary Tree라고 한다. 위 그림은 그럼 Binary Tree라고 할 수 없다. 왜냐하면, 한 노드(Node 1)가 Child Node를 3개까지도 ..

자료구조 2024.04.16
728x90
반응형
LIST