💡 알고리즘
✅ 그래프
노드와 간선으로 구성된 자료구조
이를 통해 연결된 노드간의 관계를 표현할 수 있다.
노드(정점)
✔️ 인접행렬
장점: 노드의 연결 상태를 바로 알 수 있음
단점: 노드의 개수가 N이라고 하면 이 배열의 크기는 N*N이 된다.
특정 노드에 연결된 노드를 찾으려면 N번만큼 확인해줘야 한다.
✔️ 인접 리스트
노드별로 연결된 노드를 기록
장점: 실제로 연결된 노드의 정보만 알면 된다.
단점: i와 j 노드의 연결 상태를 바로알 수 없다.
✅ 트리
사이클이 없고 방향이 없는 그래프
특징: 두 점을 연결하는 경로는 유일하다.
- 루트 노드 - 부모가 없는 최상위 노드
- 부모 노드 - 루트노드 방향으로 직접 연결된 노드
- 자식 노드
- 형제 노드 - 같은 부모를 갖는 노드
- 리프 노드 - 자식이 없는 노드
- 레벨 - 루트 노드까지 연결된 간선의 수 (level 0부터 시작함)
- 높이 - 루트 노드까지 연결된 가장 긴 간선의 수
- 크기 - 연결된 노드의 개수
- 차수 - 연결된 자식 노드의 개수
- 서브트리 - 트리 안의 작은 트리(부분집합)
✔️이진 트리
자식 노드의 수를 최대 2개로 제한하는 가장 간단한 형태
- 전위 - Root → Left → Right
- 중위 - Left → Root → Right
- 후위 - Left → Right → Root
bfs - 큐 / dfs - 스택
💡RxSwift
✅ Operator
✔️ just
element parameter로 하나의 값을 받아 Observable을 리턴한다.
하나의 값만 emit한다.
✔️ of
element parameters가 가변 파라미터로 선언되어 있어 여러가지의 값을 동시에 전달할 수 있다.
2개 이상의 값을 emit할 수 있다.
✔️ from
배열의 각 요소를 emit하고 싶다면 from을 사용
array parameters로 배열을 받고, 배열의 각 element를 observable로 리턴한다.
개별적으로 반복문 돌아서 이벤트 전달
✔️ repeatElement
무한 반복하여 아이템을 전달
✔️ repeatElement + take
take: 방출된 아이템 중 처음 n개의 아이템을 내보낸다.
'iOS > 🌱 SeSAC' 카테고리의 다른 글
23.11.02 목 (0) | 2023.11.03 |
---|---|
23.11.01 수 (1) | 2023.11.01 |
23.09.01 금 (0) | 2023.09.01 |
23.08.31 목 (0) | 2023.09.01 |
23.08.30 수 (0) | 2023.09.01 |