티스토리 뷰


 

 

 

더보기
import java.util.*;

public class Solution {
    
    // 문제 :
    // + 배열 arr의 각 원소는 숫자 0부터 9까지로 이루어져 있습니다.
    // + 이때, 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하려고 합니다.
    // + 단, 제거된 후의 남은 원소들은 순서를 유지해야 합니다.
    
    // + 이러한 문제는 중복된 원소를 제거한 후의 배열의 길이를 초반에는 알 수 없기에
    // + 자료구조 중 크기가 가변적으로 변하는 ArrayList를 사용하면 편하다.
    
    public int[] solution(int [] arr) {
        
        ArrayList <Integer> al = new ArrayList<>();
        
        int temp = 11;
        
        for ( int i = 0; i < arr.length; i++ ) {
            
            if ( temp != arr [i] ) {
                
                al.add(arr[i]);
                
            } // 연속적인 중복이 아니라면
            
            temp = arr [i];
            
        } // for
        
        // + ArrayList에서 배열로 다시 변환
        return al.stream().mapToInt(Integer::intValue).toArray();
        
    } // solution
    
} // end class

 

 


[ 참고한 블로그 ]

 

https://velog.io/@jwkim/java-arraylist-array-type-conversion

 

[Java] ArrayList ↔ Array 변환

[Java] ArrayList와 Array 변환

velog.io

 

728x90
댓글
«   2024/09   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
최근에 올라온 글
Total
Today
Yesterday
공지사항