프로그래머스 - 튜플

J-Keonho·2020년 9월 7일
0

해당 알고리즘 자료는 제가 직접 푼 것도 있지만 다른 분들의 풀이과의 비교를 통해 더 나은 알고리즘을 공부하기 위해 정리한 것들입니다.

프로그래머스 - 튜플

https://programmers.co.kr/learn/courses/30/lessons/64065

풀이 : replace 메서드를 이용하여 String을 배열로 변환하여 조건 처리

import java.util.*;
class Solution {
    public int[] solution(String s) {
        String str = s.substring(2, s.length()-2).replace("},{", "-");
	    String [] arr = str.split("-");
        Arrays.sort(arr, (a,b) -> a.length()-b.length());
        int [] answer = new int[arr.length];
        HashSet <Integer> set = new HashSet<Integer>(); 
		int idx = 0;
        for(String s1 : arr) {
			String [] srr = s1.split(",");
			for (int i = 0; i < srr.length; i++) {
				int num = Integer.valueOf(srr[i]);
				if(!set.contains(num)) {
					answer[idx++] = num;
					set.add(num);
				}
			}
		}
        return answer;
    }
}
profile
안녕하세요.

0개의 댓글