자료구조

EBinY·2021년 10월 12일
0

Tree

  • 계층적 구조, 부분 집합으로 나누면, Sub Tree로 볼 수 있음
  • 부모와 자식 노드로 구성됨, 같은 부모를 가진 형제 노드도 존재
  • 기본형은 객체로 되어 있음, 데이터만 가진게 아님, 키와 벨류로 이루어진 데이터와 메소드를 가짐

Binary Searct Tree

  • Tree 자료구조 중 하나, 빠른 탐색에 특화됨
  • root 기준 작 -> 왼, 큰 -> 오 몰아 넣고, 기준점으로 서치 시작(업&다운 게임처럼)
    = root: 10, 15는 10보다 크니 왼쪽은 안찾아봐도 됨, 오른쪽에서도 첫 value를 기준으로 재귀

Graph

  • 정점(vertex)와 간선(edge)로 구성
  • 무향/방향 그래프: 간선의 방향이 단일인지, 양방향인지 (셀프 루프, 사이클)
  • 가중치/비가중치 그래프: 간선에 조건이 달려있는지
  • 인접 matrix: 구현 및 활용도가 matrix가 좋음
    = matrix[row][column]: row: vertex, column: edge, 보통 이 구조로 표현
  • 인접 list: vertex 추가 및 삭제 기능을 구현할 때에는 list가 좋음

DFS(depth first search, 깊이 우선 탐색)

BFS(breadth first search, 너비 우선 탐색)

0개의 댓글