본문 바로가기
반응형

트리2

[Data Structure] 자료구조란? 기본 자료 구조 - 배열(Array), 링크드리스트(LinkedList), 스택(Stack), 큐(Queue), 해시 테이블(Hash Table), 그래프(Graph), 트리(Tree) 자료구조란? - 대량의 데이터를 효율적으로 관리할 수 있는 데이터 구조 - 프로그래밍에서 데이터 특정에따라 어떤 데이터 구조를 사용하느냐에 따라 코드 효율이 달라진다. 배열(Array) - 같은 종류의 데이터를 순차적으로 연결된 공간에 나열하는 자료 구조 - 각 데이터를 인덱스에 대응하도록 구성한다. 장점 첫 데이터의 위치에서 상대적인 위치(인덱스 번호)로 데이터를 접근하므로, 빠른 접근이 가능하다. - 인덱스 위치를 안다면, 상수 시간으로 접근 가능하다 O(1) 단점 데이터의 길이가 정해져있으므로, 크기 이상의 데이터를 저장할 때 새로운 배열을 만들어야한다. 링크드리스트( LinkedList) - 떨어진 곳에 존재하는 데이터를 화살표로 연결해서 관리하는 데이터 구조 배열, 순차적으로 연결된 공간에 데이.. 2021. 12. 29.
[Algorithm] 그래프 이론: 트리, 서로소, 신장 트리, 크루스칼 알고리즘, 위상 정렬 학습 목표 · 그래프(Graph)란? · 트리(Tree)란? · 서로소 집합 - 서로소 집합 자료구조 - 문제점 - find 함수 개선: 경로 압축 기법 - 서로소 집합을 활용한 사이클 판별 · 신장 트리(Spanning Tree) - 최소 신장 트리 알고리즘 - 크루스칼 알고리즘 · 위상 정렬 · DFS/BFS, 최단 경로 알고리즘은 그래프 알고리즘의 한 유형 · 크루스칼 알고리즘 - 그리디 알고리즘, 위상 정렬 알고리즘 - 큐 자료 구조 or 스택 자료구조를 활용하여 구현 그래프(Graph)란? · 노드(Node)와 노드 사이에 연결된 간선(Edge)의 정보를 가지고 있는 자료구조 · 그래프를 구현하는 2가지 방식: 1. 인접 행렬(Adjacency Matrix): 2차원 배열을 사용하는 방식 ex).. 2021. 11. 3.
반응형