본문 바로가기

분류 전체보기125

[알고리즘] 그리디 알고리즘 그리디 알고리즘 "매 선택에서 지금 이 순간 당장 최적인 답을 선택하여 적합한 결과를 도출하자" 그리디(Greedy)함? Greedy : 탐욕스러운 탐욕 알고리즘, 욕심쟁이 알고리즘이라고도 불리는 알고리즘 말 그대로 매 순간마다 미래를 생각하지 않고 가장 최선의 선택만을 하는 기법 하지만 그리디는 그 선택의 순간에서는 최선일지 몰라도 전체를 생각했을 때 최선의 수는 아닐 수 있다! '마시멜로 실험'을 예시로 들 수 있는데 당장 눈 앞의 마시멜로를 먹게 될 경우 추후 더 많은 양의 마시멜로를 포기하는 셈이 되어버린다! 따라서 그리디는 최적해들의 집합이 전체 문제의 답인 경우에만 적용할 수 있다. 혹은 정답이 아닌 정답에 가까운 근사치를 구할 때 사용하거나... 예제 그리디 알고리즘의 가장 유명한 예로는 먼.. 2021. 9. 6.
[시작하세요 도커/쿠버네티스] 이미지와 컨테이너 이미지와 컨테이너 이미지와 컨테이너는 도커 엔진에서 사용하는 기본 단위 도커 이미지 가상머신으로 따지면 생성할 때 필요한 iso 파일과 유사한 개념 이미지는 여러 개의 계층으로 된 바이너리 파일로 존재하며 컨테이너 생성 시 읽기전용으로 사용된다. 도커 이미지의 이름은 기본적으로 다음 형태와 같다. [저장소 이름] / [이미지 이름] : [태그] 저장소 여기서 저장소는 이미지가 저장된 장소를 의미한다. 이를 명시하지 않은 경우 도커 기본 이미지 저장소인 Docker Hub의 공식 이미지임을 뜻한다. 따라서 별도의 이미지 저장소를 사용하는 것이 아니라면 이를 생략해도 무방하다. 이미지 이름 말 그대로 해당 이미지의 이름 이름을 통해 해당 이미지가 어떤 역할을 하는지 파악할 수 있다. 이는 저장소처럼 생략할 .. 2021. 9. 5.
[시작하세요 도커/쿠버네티스] 도커란? 도커란? 리눅스 컨테이너에 여러 기능을 추가함으로써 애플리케이션을 컨테니어로서 좀 더 쉽게 사용할 수 있게 만들어진 오픈소스 프로젝트 도커와 관련된 프로젝트로는 도커 컴포즈, 도커 허브 등이 존재하지만 여기서는 도커 엔진을 위주로 서술한다. 도커가 왜 필요할까? 기존 가상화 기술은 Host OS위에 하이퍼바이저를 띄우고 그 위에 여러 개의 Guest OS(가상머신)를 설치해 사용하던 방식 허나 시스템 자원을 가상화하며 독립된 공간을 생성하는 작업은 하이퍼바이저를 반드시 거쳐야하므로 일반 환경에 비해 성능의 손실이 발생하게 된다. 또한, 가상 머신은 결국 또 하나의 OS 전체를 사용하기 위해 그에 필요한 모든 라이브러리, 커널 등을 포함하므로 이미지의 크기가 굉장이 크기 때문에 애플리케이션 배포를 위해 가.. 2021. 8. 14.
공부를 위해 구매한 책 도착 회사의 업무 도서 지원 시스템을 이용해 공부할 두 책을 구매했다. 1. 시작하세요! 도커/쿠버네티스 2. Programming in Scala 요즘 관심있는 + 업무를 위해 해야만 하는 도커/쿠버네티스 공부와 데이터 엔지니어링 시작 후 가장 많이 다루고 있는 스칼라 스킬 업을 하고자 구매했는데 생각보다 책 두께가 너무 두꺼워서 놀랐다;; 과연 다 볼 수 있을지 2021. 8. 13.
최근 생활 최근에는 딱히 별 특이사항 없이 지내고 있는 터라 포스팅을 자주 안했다. 그나마 특이사항은 한국이 엄청나게 덥고 습하다는거? 운이 좋게도 작년 여름은 그렇게 덥지 않았던 것 같고 (사실 취업 준비하느라 바빠서 체감하지 못한 것 같기도 하고) 재작년과 재재작년은 해외 봉사로 각각 서남아, 동남아에 다녀왔는데 한국보다 덥지 않거나 충분한 지원으로 덥지 않은 생활을 할 수 있었다. 날씨가 얼마나 더우면 길가다가 비둘기들이 그냥 길 한가운데에 대놓고 앉아있는 모습을 보기도 했다. 심지어는 집 앞에 잠깐 커피를 사러가는데 1층 건물에 아예 비둘기들이 다 들어가 있는걸 보기도.. 진짜 미친 날씨 덕분에 이번 여름은 슬랙스고 청바지고 뭐고 주구장창 반팔/반바지만 입고 있다. 사실 재택근무와 코로나로 인해 나갈 일도 .. 2021. 8. 7.
(자바) Surrogate Pair에 대해 정규식 검사가 되지 않는 버그 2021.07.27 - [IT/개발] - 유니코드를 활용한 개발 일지 유니코드를 활용한 개발 일지 유니코드라는 단어는 많이들 들어봤지만 실제로 어떻게 사용되고 있고 어떤 존재인지 자세히 아는 경우는 드물다. (사실 내가 그랬다.) 현재 데이터를 다루는 일을 하고 있다보니까 문자열을 다 ggtan.tistory.com 위 글에서 나타났던 원인을 드디어 발견했다! 환경에 따라 Supplementary Character에 대해 replaceAll()이 수행이 되지 않는 경우가 존재해서 계속 원인이 무엇일까 하며 JDK 별 / 버전 별 자바 구현체 코드를 뜯어보았다. 뜯어본 JDK는 Oracle, OpenJDK - 8/11/16이며 정확히 16버전에서 자바 정규식 검사를 위한 Pattern 클래스 내 사소한 변.. 2021. 8. 5.
해피해킹 하이브리드 type-s 백각 지름기 2년 동안 콕스와 레오폴드를 거친 뒤 어느새 해피해킹까지 올라오게 되었다. 전혀 저렴하지 않은 해피해킹을 이번에 지르게 된 건 여러 이유가 겹쳐서 인데 첫 번째는 카카오뱅크 26주 적금이 드디어 끝났다는 것이고 (사실 이율이 1.5%밖에 안되서 이자는 얼마 되지는 않는다.) 두 번째는 그 동안 주식 차곡차곡 모아뒀던 것이 뭔가 최근 미장이 쎄하다는 느낌이 들어서 어느정도 수익 실현을 해뒀다는 것이고 (사실 이 것도 시드가 작아서 얼마 되지는 않는다..) 세 번째는 회사에 복지 포인트가 생겼다는 것...!! 2021. 7. 31.
반응형