일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 함수형프로그래밍
- F
- builderPattern
- 프로토타입 패턴
- 팩토리 메소드
- 옵저버 패턴
- Functional Programming
- PrototypePattern
- 디자인패턴
- a
- Design Pattern
- Kotlin
- designPattern
- Observer Pattern
- Abstract Factory
- ㅋㅁ
- r
- 코틀린
- El
- 싱글톤
- factory method
- 디자인패턴 #
- 빌터패턴
- Singleton
- 추상 팩토리
- 추상팩토리패턴
- ㅓ
- Today
- Total
목록분류 전체보기 (327)
오늘도 더 나은 코드를 작성하였습니까?
정의 - DAG(-Directed Acyclic Graph 순환하지 않는 유향 그래프)를 방향성에 거스르지 않도록 순서대로 배열하는 방법. 예를 들어 대학을 졸업하고, 이후에 일어나는 일들을 그래프로 표현한다 가정해보자. 부분적인 순서 관계만 있는 상황에서, 필수조건을 만족하면서 치킨집을 운영한다. kahn 알고리즘 (진입차수를 이용한) 방법 * 진입차수 - 특정 노드로 들어오는 간선의 수 진출차수 - 특정 노드에서 나가는 간선의 수 - 여러가지 순서가 나올 수 있다. - 위상정렬의 가능 여부, 가능하다면 어떤 순으로? - 시간복잡도 O(V+E), 모든 정점에 연결된 간선의 갯수 만큼 반복 Queue를 이용하여 구현. 1. 진입차수 degree 0 인 정점을 Queue에 삽입한다. - 진입차수 Array..
컴퓨터 과학에서 플로이드-워셜 알고리즘(Floyd-Warshall Algorithm)은 변의 가중치가 음이거나 양인 (음수 사이클은 없는) 가중 그래프에서 최단 경로들을 찾는 알고리즘이다 "모든 노드"에서 다른 "모든 노드"까지 최단경로 모두 계산 모든 정점 하나하나 마다 거쳐갈때 상황을 가정하여, 최단거리를 완화해서 나간다는 점에서 dp 유형에 해당하는 알고리즘이다. 노드 k를 경유해 가는 경우를 확인 (A --> B) 와 (A --> K --> B) 뭐가 더 짧은지 확인한다. 예시) k = 1 일때, 4번 --> 2번 이동 불가능(INF) 했지만, 1을 경유하면, 4 --> 1 --> 2 값 5로 갱신 4번 --> 5번 이동 불가능(INF) 했지만, 1을 경우하면, 4 --> 1 --> 5 값 -2로..
다익스트라(dijkstra) 알고리즘은 도로 교통망 같은 곳에서 나타날 수 있는 그래프에서 꼭짓점 간의 최단 경로를 찾는 알고리즘이다. "특정" 노드에서 다른 "모든"노드로 가는 최단경로를 계산한다. 양의 가중치에서 사용한다. 매 상황(현재 노드에서 다른 노드로 이동)때 가장 비용이 적은 노드를 선택한다(그리디) 현재 최소거리 Distance Table을 갱신하면서, dp 유형에도 해당하는 알고리즘이다. 예시) 아래와 같은 무방향 그래프가 주어졌다고 가정하자. 출발점 A로 시작한다 가정하면, 갈수 있는곳은 B, D 두 군데이며,테이블을 갱신 후, 시작점(A)에서 가까운 B로 간다. B로 이동후, 갈수 있는곳은 E, D 두 군데이며, 테이블을 갱신 후, 시작점(A)에서 가까운 D로 간다. D로 이동후, 갈..
side effect 정의composable 함수 범위 외부에서 발생하는 앱 상태의 변경. composable의 lifecycle 및 속성((예측할 수 없는 recomposition, 다양한 순서로 컴포저블 recomposition, 실행 또는 삭제할 수 있는 recomposition))으로 인해 composable의 이상적인 형태는 side-effect가 전혀 존재하지 않는것이다. 그러나 때로는 snack bar와 같은 일회성 이벤트를 트리거하거나 특정 상태 조건이 주어지면 다른 화면으로 이동하는 등의 side-effect이 필요한 경우도 있습니다. 필요한 side-effects는 컴포저블의 수명 주기를 인식하는 제어된 환경에서 이루어져야 한다. State and effect use cases* ..