728x90
728x90
Graph vs. Tree
Graph
node와node를 연결하는edge로 구성된data structure(자료구조).- object들의 network를 모델링하는데 주로 사용됨.
Deep Learning을 가능하게 한 Back-propagation은
Reverse-mode Auto Differentiation에 기반하는데,
이는 Computation Graph을 통해 수행됨.
Tree
- Directed Acyclic Graph 에서, graph 내의 모든 node와 path가 존재하는 root node라는 것이 1개 있는 자료구조.
- object들의 hierarchy를 모델링하는데 주로 사용됨.
Data Structure
- Data를 표현하고 관리하고 처리하기 위한 구조.
stack,queue,graph,tree등이 기본적인 data structure로 linked list 등으로 구현됨.
Tree vs. Graph
| Tree | Graph | |
| Root node 여부 | 1개의 Root 존재 | 해당 개념 없음 |
| Parent node 여부 | root를 제외하고 모든 node는 1개의 parent node를 가짐 | 해당 개념 없음 |
| Cycle 여부 | Cycle 존재하지 않는 acyclic graph의 일종 | Cycle 가능 |
| Direction 여부 | 반드시 direction을 가지며, 이는 parent-child 관계를 나타냄 | Undirected도 가능 |
Graph 와 Tree의 예
Tree의 예
- Class들의 inherence diagram 등이 Tree임.
- binary tree (각 node 는 최대 2개의 child node를 가짐)등이 자주 나옴.
Graph의 예
- 통신 기기 간의 네트워크, 지하철 노선도 등이 대표적인 예임.
- Artificial Neural Netwokr등의 구현에서 사용되는
computational graph등이 유명.
관련 자료.
Search Algorithm
Graph나 Tree에서의 search algorithm은 매우 중요함.
다음 URL을 꼭 읽어볼 것.
search(탐색) 란?
- 많은 양의 데이터 중에서 원하는 데이터를 찾는 과정.
Graph,Tree등의 data structure(자료구조) 안에서 search(탐색) 알고리즘을 적용함.
Graph Search란?
하나의Node(orvertex,정점)으로부터 시작하여 차례대로 모든Node들을 한 번씩 방문하는Task.
1. 특정 node에서 다른 특정 node로 갈 수 있는지 여부 체크 (주로 BFS를 사용).
2. network나 circuit등에서 연결이 되어 있는지 여부를 확인하는데에도 사용됨.
'Computer > CE' 카테고리의 다른 글
| [Tip] Chrome Hot Keys (shortcut) (0) | 2023.03.20 |
|---|---|
| Basic Input Output System (BIOS) and CMOS (1) | 2023.02.23 |
| [CE] Subnet Mask (1) | 2023.01.17 |
| [CE] Gateway (0) | 2023.01.17 |
| [CE] Router (0) | 2023.01.17 |