[Data Structure] 이진 탐색 트리(Binary Search Tree, BST)
본 포스트는 이진 탐색 트리(Binary Search Tree)에 대해 공부한 내용을 정리한 것입니다. 이진 탐색 트리(BST)는 데이터를 효율적으로 저장하고 빠르게 검색할 수 있는 강력한 자료 구조입니다.이 구조는 데이터를 트리 형태로 구성하며, 탐색, 삽입, 삭제 작업을 평균적으로 O(logN) 시간에 수행할 수 있습니다.리스트와 이진 탐색 트리(BST)의 비교이진 탐색 트리를 배울 때, 이런 의문이 든적 있지 않나요?그냥 리스트로 하면되지, 왜 굳이 귀찮게 트리를 만들어서 삽입, 삭제, 탐색을 하는거지? 위 의문에 대한 해답을 얻기 위해서는 리스트와 이진 탐색 트리(BST)의 성능을 비교해보아야 합니다!리스트 성능:삽입: O(n) (단, 맨 끝에 삽입할 경우 O(1))삭제: O(n) (단, 맨 끝..
2024. 8. 28.
[Data Structure] 트리(Tree)
본 포스트에서는 트리(Tree)에 대해 이야기해보려 합니다. 트리(Tree)는 컴퓨터 과학에서 매우 중요한 데이터 구조 중 하나로, 데이터의 저장 및 검색 효율성을 높이기 위해 다양한 응용 프로그램에서 사용됩니다. 트리가 무엇인지, 어떻게 구성되어 있는지 살펴보도록 하겠습니다!트리의 개념비선형 구조원소들 간에 1:n 관계를 가지는 자료구조원소들 간에 계층 관계를 가지는 계층형 자료구조상위 원소에서 하위 원소로 내려가면서 확장되는 트리(나무)모양의 구조트리 용어 정리노드(node): 트리의 원소 (A, B, C, D, E, F, G, H, I, J, K)간선(edge): 노드를 연결하는 선 (부모 노드와 자식 노드를 연결)루트 노드(root node): 트리의 시작 노드 (A)형제 노드(sibling ..
2024. 8. 27.