본문 바로가기

전체 글61

프로그래머스 - 소수만들기 프로그래머스 - 소수만들기 해당 문제는 재귀방식으로 주어진 숫자 배열중 3개를 선택해 더한 숫자가 소수이면 카운팅하고 아닌경우 0을 return 하여 최종적으로 만들수 있는 소수의 갯수를 return 해야하는 문제였습니다. 해당 문제는 재귀 형식으로 풀었고, 넘겨주는 nums는 넘어온 nums에서 자신 이후의 숫자들을 넘겨 최종 depth가 2인 경우 남은 배열의 숫자들을 넘어온 addedNum과 더해 해당 숫자가 소수인경우 1을 return 하고 아니면 0을 return하는 식으로 구현했습니다. public int solution(int[] nums) { return dfs(0, 0, nums); } private int dfs(int depth, int addedNum, int[] nums) { in.. 2022. 4. 18.
JPA(3) - 값타입 엔티티 타입 @Entity로 정의하는 객체 데이터가 변해도 시결자로 지속해서 추적 가능 식별자 있음/생명주기관리/ 공유 값타입 단순히 값으로 사용하는 자바 기본타입이나 객체 식별자가 없고 값만 있으므로 변경시 추적 불가 - 임베디드 타입 값타입을 여러 엔티티에서 공유하면 위험. 대신 값을 복사해서 사용. 값 타입은 불변 객체로 설계하는 것을 추천 생명주기를 엔티티의 의존 값 타입은 공유하면 안됨 값 타입 컬렉션에 변경 사항이 발생하면, 주인 엔티티와 연관된 모든 데이터를 삭제하고, 값 타입 컬렉션에있는 현재 값을 모두 다시 저장한다. 값 타입 컬렉션을 매핑하는 테이블은 몯느 컬럼을 묶어서 기본 키를 구성해야 함. 기본값 타입 - 자바 기본 타입(int, double) - 래퍼 클래스(Integer, Lo.. 2022. 4. 15.
프로그래머스 - [1차] 뉴스 클러스터링 프로그래머스 - [1차] 뉴스 클러스터링 해당 문제는 입력 받은 문자열들을 문제의 조건에 맞는 집합으로 변경하면서 중복 원소를 허용 하므로 해시로 구현 했습니다. 이후 교집합과 합집합은 문제 설명 그대로 구현하였습니다. public int solution(String str1, String str2) { Map str1Set = getSet(str1); Map str2Set = getSet(str2); if (str1Set.isEmpty() && str2Set.isEmpty()) { return 1; } double intersectionCount = getIntersection(str1Set, str2Set); double unionCount = getUnionCount(str1Set, str2Set).. 2022. 4. 13.