멱집합(모든 부분집합)을 비트 벡터를 이용해 구현
원소 개수가 n개이면, 모든 부분집합의 개수는 2^n개가 되므로 멱집합의 원소 개수는 2^n개다. 너무 많다. 비트 벡터를 이용해서 메모리를 n 만큼만 쓰는 방법 https://github.com/umbum/effective-java-3e-source-code/blob/master/src/effectivejava/chapt...
원소 개수가 n개이면, 모든 부분집합의 개수는 2^n개가 되므로 멱집합의 원소 개수는 2^n개다. 너무 많다. 비트 벡터를 이용해서 메모리를 n 만큼만 쓰는 방법 https://github.com/umbum/effective-java-3e-source-code/blob/master/src/effectivejava/chapt...
실전! 스프링 5를 활용한 리액티브 프로그래밍 예제 코드 Github 스크린 샷 / 다이어그램 그림파일 왜 리액티브인가? 전통적인 개발 방법대로 작성했을 때 발생했던 문제? 시간 당 리퀘스트, 처리 시간, 스레드 수를 고려해서 초당 1000건 처리할 수 있을 거라고 가정하고 시스템을 작성했는데 블랙 ...
[Java] lambda 기본 개념 [Java] Stream API 노트 아이템 42. 익명 클래스보다는 람다를 사용하라 람다의 모든 매개변수 타입은 생략한다. 타입을 명시해야 코드가 더 명확한 경우만 명시 컴파일러가 “타입을 알 수 없다”는 오류를 낼 때만 명시 단, 람다 코드로 명...
bash Ctrl+Backspace로 단어 삭제하도록 만들기 +++ /etc/inputrc 또는 ~/.inputrc "\C-h": backward-kill-word 이렇게 설정했는데 backspace만 눌러도 한 단어가 지워지는 경우? 더보기 backspace를 누르면 ^?(0x7f)를 보내도록 되어 있고, Ctrl+backspace를 ...
[Languages & Frameworks/Kotlin Java] - [Java] Enum 아이템 34. int 상수 대신 enum 타입을 사용하라 Planet.java 자바에서 enum을 뒷받침하는 아이디어는 다음과 같다. enum 타입 자체는 클래스이며, 상수 하나당 자신의 인스턴스를 하나씩 만들어 public static fi...
[!info] 제네릭의 본질은, 런타임에 ClassCastException이 발생하는 것을 막아주어 타입 안전성을 높이는데 있다. 아이템 26. raw 타입은 사용하지 마라 (제네릭 쓸 때 <>를 빼먹지 않도록 주의해라) raw타입이란 List<>가 아니라 그냥 List로, 제네릭을 타입 지정 없이 쓰는 것을 말...
아이템 10. equals는 일반 규약을 지켜 재정의하라 자바에서는 ==의 동작이 두 가지다. 원시 타입에 사용할 경우, 두 피연산자의 값이 같은지 비교 (동등성, equality) 참조 타입에 사용할 경우, 두 피연산자의 주소가 같은지 비교 (참조 비교, reference comparision) equals는 두 객체가 ...
아이템 1. 생성자 대신 정적 팩터리 메서드를 고려하라 GoF에 나오는 팩터리 메서드와는 다르다. public 생성자에 new를 써서 객체를 만드는게 아니라, 아래 처럼 팩터리 메서드를 사용하는 것을 말함. public 생성자와 static factory 메서드는 각자 장단이 있지만, 후자가 유리한 경우가 더 많다. public st...
findAll로 다 가져와서 앱에서 필터링? 아니면 쿼리 WHERE절에서 필터링? 어디서 관리하는게 더 나은가? PagingItemReader 같이 offset 기반으로 분할해서 읽어오는 경우, 일단 다 가져와서 앱에서 필터링하게 되면 update로 인한 offset이 틀어짐이 발생 할 수 있다. 전제 작업 A1 read ...
tomcat 설치 ## java 먼저 설치하고, JAVA\_HOME 환경변수 설정. $ brew search tomcat $ brew install tomcat $ /usr/local/Cellar/tomcat@8/8.5.49/bin/catalina configtest # 확인 차 $ /usr/local/Cellar/tomcat@8/8.5.4...