스위프트에 데이터 구조 및 구조
이것이 Udemy 과정에서 내 학습의 요약입니다. "데이터 구조 및 Algo in Swift"
시간 복잡성 :
- 일정한 시간
- 선형 시간
- 2 차 시간
- 로그 시간 - 이진 검색
- 유사성 시간
마디:
- 뿌리
- 자녀 -> 왼쪽 아이 & 오른쪽 자녀
- 잎
링크 된 목록
스택 (lifo)
대기열 (FIFO)
재귀
- 기본 케이스 - 재귀를 중지합니다.
- 재귀 사건
나무 :
- 깊이 첫 번째 트래버스
- 레벨 주문 횡단
- 찾다
- 이진 트리 (최대 : 2 명의 어린이 전용 - 왼쪽 및 오른쪽)
- 순서대로 -> 좌익 -> 노드 -> 오른쪽 차일드
- Post Order Traversal-> Leftchild-> Rightchild-> 노드
- 프리 주문 트래버스 -> 노드 -> 왼쪽 차일드 -> 오른쪽 차일
- 이진 검색 트리
선형 검색
이진 검색
- 정렬 된 배열
- 중간 지수 - 왼쪽 또는 오른쪽
- 최고의 시간 : O (1)
- 최악의 시간 : O (log n)
버블 정렬
- 분류되지 않은
- 최고의 시간 : O (N) (이미 정렬 된 경우)
- 최악의 시간 : O (n^2)
선택 정렬
- 배열의 최소 요소를 현재 인덱스로 바꾸십시오.
- 다음 지수로 이동하고 1 단계를 반복하십시오
- 최고의 시간 : O (N^2)
- 최악의 시간 : O (n^2)
삽입 정렬
- 분류되지 않은
- 최고의 시간 : O (N)
- 최악의 시간 : O (n^2)
그래프:
구성됩니다
그래프 유형 :
- 가중 그래프
- 지시 된 그래프
- 방향이없는 그래프 (양방향)
인접력 목록
- 가장 일반적으로/널리 사용되는 그래프를 만들고 표현하는 방법