14. [JAVA] 프로그래머스 코딩테스트 연습 Level.1 - 폰켓몬
https://programmers.co.kr/learn/challenges
코딩테스트 연습
기초부터 차근차근, 직접 코드를 작성해 보세요.
programmers.co.kr
프로그래머스 코딩테스트 연습 Level.1 - 폰켓몬
풀이
import java.util.*;
class Solution {
public int solution(int[] nums) {
int answer = 0;
List<Integer> list = new ArrayList<>();
for (int i = 0; i < nums.length; i++) {
int res = nums[i];
// nums값을 중복 없이 가져오기 (contains)
if (!list.contains(res)) {
// 이 때 N마리 중 N/2마리만 가져가도 좋다고 했으므로, list의 사이즈와 nums의 사이즈 체크
if (list.size() > (nums.length / 2) - 1) {
break;
}
list.add(res);
}
}
answer = list.size();
return answer;
}
}
풀이 과정
- contains 사용 - 이전에 풀었던 '두 개 뽑아서 더하기' 에서 contains를 사용했던 기억이 나서 이용
2022.04.27 - [코딩테스트 - JAVA/프로그래머스 Programmers] - 6. [JAVA] 프로그래머스 코딩테스트 연습 Level.1 - 두 개 뽑아서 더하기°
6. [JAVA] 프로그래머스 코딩테스트 연습 Level.1 - 두 개 뽑아서 더하기°
https://programmers.co.kr/learn/challenges 코딩테스트 연습 기초부터 차근차근, 직접 코드를 작성해 보세요. programmers.co.kr 풀이 import java.util.*; class Solution { public int[] solution(int[] nu..
dhdl-it.tistory.com
ArrayList.contains()
= 리스트 안에 어떤 객체가 있는지 확인하는데 사용하는 메소드.
List안에 같은 값이 있으면 true를, 없으면 false를 리턴
다른 사람의 풀이
HashSet을 사용하여 따로 중복을 제거해주지 않았으며, 삼항연산자 사용하여 return
HashSet
= Set의 인터페이스 구현 클래스 -> Set의 성질 그대로 상속.
* Set의 장점 : 중복을 자동으로 제거
Set 인터페이스를 구현한 클래스로 HashSet과 TreeSet 존재.
- HashSet : 정렬X
- TreeSet : 자동정렬(정렬O)