LinkedList와 ArrayList는 add()와, set()의 time cost가 다르다. ArrayList = 해당인덱스까지 찾아가는 시간(O(1)) + 중간삽입(뒤에꺼 한칸씩 미루는데 시간걸림)(O(n)) LinkedList = 해당인덱스까지 찾아가는 시간(O(n)) + 중간삽입(앞뒤 연결끊고 사이에 넣고 연결하느라 빠름)(O(1)) 즉, 테스트 케이스에 따라 다를 수 있다.
ArrayList에서 타임 아웃이 발생했다면 LinkedList로 바꾸어보고, 반대로도 해본다. 본 구현에서는 add(), set()이 빈번할 것 같아서 LinkedList로 구현하였으나, 타임 아웃이 발생했다.
ArrayList로 구현하면 타임 아웃이 발생하지 않는다. import java.util.*; import java.math.*; class Solution { public int solution(int k, int[] tangerine) { int answer = 0; //귤 8개의 크기가 ...
원문 링크 : 프로그래머스 귤 고르기 - java