일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
- Observer Pattern
- 안드로이드 디자인시스템
- 옵저버 패턴
- 코틀린
- Kotlin
- factory method
- El
- r
- 디자인패턴
- compose
- 싱글톤
- PrototypePattern
- Singleton
- material3
- ㅓ
- android designsystem
- designPattern
- Functional Programming
- Design Pattern
- 프로토타입 패턴
- 팩토리 메소드
- builderPattern
- 추상 팩토리
- Abstract Factory
- F
- 디자인패턴 #
- 빌터패턴
- ㅋㅁ
- 추상팩토리패턴
- 함수형프로그래밍
- Today
- Total
목록전체 글 (333)
오늘도 더 나은 코드를 작성하였습니까?

참조한 자료 유튜브 - https://www.youtube.com/watch?v=i57ZGhOVPcI 정의 *이진 트리(binary tree)- 각각의 노드가 최대 두 개의 자식 노드를 가지는 트리 자료 구조 이진 탐색 트리(BST: binary search tree) 이진 트리중 아래와 같은 특징을 지니는 트리 - 모든 노드는 값(value)을 가진다. - 값은 대소관계가 존재한다. 즉 비교 가능하다. - 노드의 왼쪽 서브트리에는 그 노드의 값보다 작은 값들을 지닌 노드들로 이루어져 있다. - 노드의 오른쪽 서브트리에는 그 노드의 값보다 큰 값들을 지닌 노드들로 이루어져 있다. - 좌우. 서브 트리는 각각이 다시 이진 탐색 트리 이다. search / insert / delete *search 는 In..

이진법 정의 이진법(二進法, binary)은 두 개의 숫자(0과 1)만을 이용하는 수 체계이다. * 이진수 각 자릿수에 따른 표현 가능한 수. 1자리 -> 0, 1 2자리 -> 00, 01, 10, 11 3자리 -> 000, 001, 010, 011, 100, 101, 110, 111 n자리 -> 2^n개 변환 10진수 -> 2진수 예) 20 1이 될때까지 나눠서 나머지를 모음. fun decimalToBinary(n: Int): IntArray { var decimal = n val arr = IntArray(32) { 0 } var idx = 0 while (decimal != 1) { arr[idx] = decimal % 2 decimal /= 2 idx += 1 } arr[idx] = decima..

정의 그래프를 방문 또는 탐색하는 방법중 하나이다. 시작 노드를 기준으로, "동일한 레벨"를 기준으로 탐색을 진행한다. 즉, 1개의 간선으로 연결된 모든 노드 탐색 후, 2개의 간선으로 연결된 모든 노드 탐색.. 더 이상 방문하지 않은 정점이 없을 때까지 방문하지 않은 모든 정점들에 대해서도 너비 우선 탐색을 적용한다 한번 방문한 노드는 다시 방문하지 않는다. V - 정점(노드)의 개수 E - 간선의 개수 인접리스트로 표현된 자료구조로 탐색 했다면 시간복잡도 - O(V + E) 인접행렬로 표현된 자료구조로 탐색 했다면 (시간 복잡도가 크기 때문에 인접리스트로 바꾸어 탐색) 시간복잡도 O(V^2) 동일한 level 순으로 탐색을 해야될때 사용한다. 간선에 특별한 가중치가 있지 않고 모든 간선의 가중치가 동..

정의 그래프를 탐색 하는 방법중 하나이다. 그래프에서는 탐색을 시작하는 노드를 시작으로 인접한 노드로 지속적으로 이동한다. 더 이상 탐색을 하지 않은 인접한 노드가 없을 때 까지 탐색을 진행후, 부모노드로 돌아와서 탐색하지 않은 인접한 노드를 탐색한다. 인접한 모든 노드가 탐색이 완료되면 종료한다. * 탐색은 한번 방문한 노드는 다시 방문하지 않습니다. (부모노드로 돌아오는것 이외에) * 현재 노드에서 다음 노드로 이동시 인접한 노드중에 선택하는 기준은 위 그림에선 왼쪽 --> 오른쪽이다. V - 정점(노드)의 개수 E - 간선의 개수 인접리스트로 표현된 자료구조로 탐색 했다면 시간복잡도 - O(V + E) 인접행렬로 표현된 자료구조로 탐색 했다면 (시간 복잡도가 크기 때문에 인접리스트로 바꾸어 탐색) ..