일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Algorithm
- MSA
- 익명클래스
- Microservice
- kubernetes
- 코틀린
- java
- 동기화
- 클라우드 네이티브
- devops
- cloud native
- 마이크로서비스
- 머신러닝
- 쿠버네티스
- decorator 패턴
- 클라우드 네이티브 자바
- ansible
- 자바
- Adapter 패턴
- spring microservice
- cloud native java
- Stress test
- ingress
- nGrinder
- CRD
- Spring
- 헬름
- Semaphore
- MySQL
- Kotlin
- Today
- Total
목록전체 글 (86)
카샤의 만개시기
2-3 트리는 노드 하나에 2개의 값이 있을수 있으며 링크는 3개가 있을수 있다. 2-3 트리는 다음과 같은 특징을 가지고 있다. 각 노드는 2개 이하의 아이템과 3개 이하의 링크로 구성된다. 노드 안의항목은 Item1 < Item2 크기로 정렬된다. 각 링크는 SubTree1 < Item1 < SubTree2 < Item3 < SubTree3 와 같은 순서로 링크된다. AVL 트리가 총 6개의 노드를 나타낼때 높이는 2이지만 2-3트리를 이용하여 나타낼때는 높이가 1이 된다. 따라서 AVL트리와 2-3트리의 시간복잡도를 나타내자면 각각 O( log2(N) ), O( log3(N) )이 되어 2-3트리가 성능이 더 높음을 알수 있다. 하지만 2-3트리가 여러 가지 트리 중 성능이 최고라고 할수만은 없다...
이진트리는 한쪽으로 치우친 형태로 트리 구조가 만들어 질수 있는데 그렇게 되면 트리 구조가 아닌 일반적인 연결 리스트와 별 차이가 없게 되기 때문에 이진 트리의 장점이 사라지게 된다. AVL 트리는 이러한 전체 트리의 구조가 균형이 맞도록 하는 트리다. 즉, 쏠린 트리처럼 트리 구조가 한쪽으로 쏠리는 것을 막아 트리 구조의 균형을 맞춤으로써 조회 성능을 O(logN)으로 유지할수 있는것이다. AVL 트리는 다음과 같은 특징이 있다. 균형도(Balance Factor)라는 개념이 있는데, 이는 각 노드의 왼쪽 노드와 오른쪽 노드의 차이를 말한다. 리프 노드의 균형도는 0이다. 균형도는 '왼쪽 자식 트리의 높이 - 오른쪽 자식 트리의 높이'로 계산한다. 왼쪽 자식 노드와 오른쪽 자식 노드의 균..
트리 순회 알고리즘 (Tree Traversal Algorithm) 전위 순회(Pre-order traversal) : ABDECFG 중위 순회(In-order traversal) : DBEACFG 후위 순회(Post-order traversal) : DEBFGCA 단계 순회(Level-order traversal) : ABCDEFG
한빛미디어의 지원을 받아 '파이썬으로 배우는 머신러닝의 교과서'라는 책을 읽어보게 되었습니다. 이 책은 '이토 마코토'라는 일본 박사님께서 2018년 1월에 저술하였으며 11월에 한빛미디어에서 번역되서 공개되었습니다. 책 표지를 보면 이 책에 대하여 몇가지 특징을 적어낸것을 찾아낼 수 있는데 그 내용은 하기와 같습니다. '그림'으로 이해하고 '코드'로 이해하는 머신러닝, 딥러닝 '기초' 머신러닝의 '교과서' 위 특징들과 함께 책의 리뷰와 누구에게 이 책을 권하면 좋을지 알아보겠습니다. Feature 1 & 2. 이 책을 받았을때 아무 페이지나 열어보면 거의 모든 페이지에 그림이 있을정도로 이 책에는 그림이 많습니다. 수학 공식을 설명할때도 쉽게 이해할수 있도록 그래프가 다 그려져 있으며 파이썬을 이용하여..
'CMS' Contents Management System 서비스를 운영하다보면 페이지를 추가한다거나 네비게이션바 구조 변경, 게시판 등의 모듈을 추가 혹은 단순한 정적 페이지의 DOM이나 텍스트를 변경하는 일은 정말 너무나도 흔한 일입니다. 그런데 위와 같이 단순한 작업을 할때마다 서비스 배포를 위해서 인건비가 비싼 개발자가 계속 투입되어야한다면? 그건 정말 비효율적인 구조가 아닐 수가 없습니다. 물론 CI/CD를 이용해서 서비스를 간편하게 배포 할 수 있지만 그럼에도 새로 배포한다는 것은 리스크가 동반되는 작업이라는 것은 자명한 일입니다. 만약 무중단 서비스가 구축되어 있지 않다면 서비스를 재배포 하는 순간 서비스가 재시작하여 완전히 로드 될때까지 일시적으로 멈출수도 있습니다. 그런데 매주 웹페이지의..
아무런 준비도 되어있지 않은 상황에서 나홀로 현업에 던져져 다양한 환경의 영역들과 개발부터 운영까지 해내며 고독히 탑을 쌓아가야만 했던 시간이 있었습니다. 어느정도 넓고 높은 탑을 쌓았다고 생각이들즈음 필자는 본인이 지어놓은 탑을 평가하기 위해 탑을 되돌아보았고, 그 모습은 마치 가운데 중간중간이 뚫려있는 '젠가'와 같은 모습이었습니다. 기초공사가 튼튼하지 않은 탑은 언제든 무너질수 있다는 사실을 잊은채 탑을 너무 높게만 지으려는데 열중했다는 사실을 깨달았습니다. 그래서 2019년. 탑에서 내려와 기초 공사부터 다시 시작하기로 하였습니다. '만개시기' 만능개발자의시작은기록부터. 지금까지의 모든 기록은 사내 도큐먼트로 기록하거나 혹은 메모장에 관련 자료들을 스크랩하는 수준이었습니다. 하지만 돌아보니, 그 ..