코딩 정복 가즈아~
Home
  • 분류 전체보기 (159)
    • 알고리즘 풀이 (149)
      • 프로그래머스 (89)
      • 백준 (59)
    • 취준 일기 (6)
    • 네트워크 정리 (1)
Home
  • 분류 전체보기 (159)
    • 알고리즘 풀이 (149)
      • 프로그래머스 (89)
      • 백준 (59)
    • 취준 일기 (6)
    • 네트워크 정리 (1)
블로그 내 검색

코딩 정복 가즈아~

(っ◔◡◔)っ ♥ 2021 취뽀하자!! ♥

  • 알고리즘 풀이/프로그래머스

    [level2] 프로그래머스 - 튜플(JAVA)

    2021. 9. 10.

    by. 데롱디롱

    728x90

     

     

    [ 풀이 방법 ]

    1. 각 숫자가 나온 횟수를 HashMap에 저장

    예제 2번

     

     

    2. 횟수(value)를 기준으로 키를 내림차순 정렬

    예제 2번

     

     

    3. List(keySet)를 int배열(answer)로 바꿔서 리턴!

     

     

     

     

    [ 전체 코드 ]

    import java.util.ArrayList;
    import java.util.Collections;
    import java.util.HashMap;
    import java.util.List;
    import java.util.StringTokenizer;
    
    class Solution {
        public static int[] solution(String s) {
            // 숫자만 자르기
            StringTokenizer st = new StringTokenizer(s, "},{");
    
            // 숫자가 나온 횟수 세기
            HashMap<Integer, Integer> num = new HashMap<Integer, Integer>();
            while (st.hasMoreTokens()) {
                int n = Integer.parseInt(st.nextToken());
                num.put(n, num.containsKey(n) ? num.get(n) + 1 : 1);
            }
    
            // 횟수기준 내림차순 정렬
            List<Integer> keySet = new ArrayList<Integer>(num.keySet());
            Collections.sort(keySet, (v1, v2) -> (num.get(v2) - num.get(v1)));
    
            int[] answer = new int[keySet.size()];
            for (int i = 0; i < keySet.size(); i++)
                answer[i] = keySet.get(i);
    
            return answer;
        }
    }
    저작자표시 (새창열림)

    '알고리즘 풀이 > 프로그래머스' 카테고리의 다른 글

    [level2] 프로그래머스 - 순위 검색(JAVA)  (0) 2021.09.12
    [level2] 프로그래머스 - 멀쩡한 사각형(JAV)  (0) 2021.09.11
    [level2] 프로그래머스 - 수식 최대화(JAVA)  (0) 2021.09.10
    [level2] 프로그래머스 - [1차] 뉴스 클러스터링(JAVA)  (0) 2021.09.09
    [level2] 프로그래머스 - 거리두기 확인하기(JAVA)  (1) 2021.09.09

    댓글

    관련글

    • [level2] 프로그래머스 - 순위 검색(JAVA) 2021.09.12
    • [level2] 프로그래머스 - 멀쩡한 사각형(JAV) 2021.09.11
    • [level2] 프로그래머스 - 수식 최대화(JAVA) 2021.09.10
    • [level2] 프로그래머스 - [1차] 뉴스 클러스터링(JAVA) 2021.09.09
    맨 위로
전체 글 보기
Tistory 로그인
Tistory 로그아웃
로그아웃 글쓰기 관리

Today

Total

피할 수 없다면, 순간을 즐겨라

Designed by Nana
블로그 이미지
데롱디롱
희희.. (๑′ᴗ‵๑)

티스토리툴바