본문 바로가기

개발/java

[programmers]코딩테스트 연습 > 찾아라 프로그래밍 마에스터 > 폰켓몬


나의 해답

import java.util.HashSet;

class Solution {
    public int solution(int[] nums) {
        //전체갯수/2 == 선택 가능 폰켓몬 수  
        int chose=nums.length/2;
        
        //중복제거 
        HashSet<Integer> have = new HashSet<>();
        for(int data : nums){
        	
            //선택 가능 폰켓몬 수 만큼 반복해서 대입
            if(have.size()<chose){
                have.add(data);
            }
        }
        return have.size();
    }
}

HashSet<>

Set은 요소의 중복을 허용하지 않는 데이터의 집합니다.

add만 하면 중복을 제거할 수 있다.

 

하위클래스로는 HashSet, LinkedHashSet, TreeSet 등이 있는데 

  •  
  • 더보기
    HashSet

    데이터의 순서를 보장하지 않는다.
  • 더보기
    LinkedHashSet

    추가된 순서에 따라 저장된다.
  • 더보기
    TreeSet

    자동으로 정렬
    (default) 오름차순

 

 

 

'개발 > java' 카테고리의 다른 글

프로그래머스 JAVA  (0) 2021.07.27