일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 전화번호 목록
- @EnableScheduling
- Java
- 루씬 인 액션
- 다리를 지나는 트럭
- 크론 표현식
- 검색 기능 확장
- 가장 큰 수
- 영속 자료구조
- 커링
- @configuration
- @Setter
- 고차원 함수
- 스택/큐
- H-index
- 정렬
- 코딩 테스트
- 모던 자바 인 액션
- kubenetes
- 쿠버네티스
- 프로그래머스
- @Getter
- 완주하지 못한 선수
- @Data
- K번째수
- 스프링 스케쥴러
- 롬복 어노테이션
- 알고리즘
- 기능개발
- 해시
- Today
- Total
목록해시 (4)
Today I Learned
*풀이 1. 장르별 총 재생횟수를 넣는다.(Map) 2. 장르별 음악목록(재생횟수, 고유번호)을 넣는다.(Map) 3. 장르별 총 재생횟수를 정렬한다. 4. 해당하는 음악목록을 뽑는다.(ArrayList) 5. 음악목록을 재생횟수 순으로 정렬한다. 6. 베스트앨범에 순서대로 넣는다. 좀 더 간결하게 풀 수 있는 방법은 없을까? 코드 import java.util.*; import java.util.Collections; class Solution { public int[] solution(String[] genres, int[] plays) { int[] answer = {}; ArrayList bestMusic = new ArrayList(); Map genresCnt = new HashMap(); M..
해시에 의상 종류 별 개수를 넣어야되는건 알겠는데, 의상 조합을 어떻게 계산해야될지 모르겠어서 결국 컨닝함 (한 종류의 의상 수 + 1(안입는 경우의 수)) * (한 종류의 의상 수 + 1(안입는 경우의 수)) - 1(아무것도 안 입는 경우의 수) 이거랍니다....... 코드 import java.util.*; class Solution { public int solution(String[][] clothes) { Map cHash = new HashMap(); for(String[] c : clothes){ //c[0] : 의상이름, c[1] : 의상종류 cHash.put(c[1], cHash.getOrDefault(c[1],0)+1); } int result = 1; for(String key : c..
n+(n-1)+(n-2)+...+1 해서 n^2 나오나 했는데, 생각해보니까 정렬해서 바로 아래 값이랑만 비교하면 되겠더라고. 가나다 가나다라마바사 가나라 이런식으로 정렬될꺼아냐? 시간복잡도는 정렬시간인 nlogn으로 나올것같다. 그래서 풀기는 금방 풀었는데... 코드 import java.util.*; class Solution { public boolean solution(String[] phone_book) { Arrays.sort(phone_book); for(int i = 0; i < phone_book.length-1; i++){ if(phone_book[i+1].startsWith(phone_book[i])){ return false; } } return true; } } 결과 근데 해시 문..
2중 포문으로 돌리면 당연히 안되고, 해시 문제라서 해시를 사용했다. participant 배열을 돌면서 pHash에 (이름, 인원)으로 참가자를 더한다. 동명이인 때문에 인원 값이 들어간다. 그리고 completion 배열을 돌면서 인원을 한명씩 줄인다. 결과값 찾을때 한번 더 체크하기싫어서 인원이 0이 되면 해시에서 아예 지워버렸다. 처음에는 if문으로 해시에 값이 존재하는지 체크해서 참가자를 더했는데, 값이 없을 시 자동으로 default 값 셋팅해주는 getOrDefault라는 함수가 있더라. 코드 import java.util.HashMap; import java.util.Map; class Solution { public String solution(String[] participant, St..