728x90
stack 풀이
import java.util.*;
public class Solution {
public Stack solution(int []arr) {
Stack<Integer> stack = new Stack<>();
for(int i = 0; i < arr.length; i++){
stack.push(arr[i]);
if(i != 0 && arr[i-1] == arr[i]){
stack.pop();
}
}
// System.out.println(stack);
return stack;
}
}
arraylist 풀이
import java.util.ArrayList;
public class Solution {
public int[] solution(int []arr) {
int[] answer = {};
//연속적으로 나타내는 숫자를 제거하고 남은수의 배열길이가 몇인지 모르므로 가변리스트인 ArrayList선언
ArrayList<Integer> arrList = new ArrayList<Integer>();
int num = -1; //원소가 0~9까지 이므로 영향 안받는 아무 숫자.
for(int i=0; i<arr.length; i++){
//num에 들어가있는 숫자와 비교<중복확인>
if(arr[i] != num){
arrList.add(arr[i]);
//처음엔 무조건 숫자가다르므로 첫숫자는 무조건 삽입
num = arr[i];
}
}
answer = new int[arrList.size()]; //ArraList를 일반배열로
//answer 리스트 크기 선언.
for(int i=0; i<answer.length; i++){
answer[i] = arrList.get(i);
}//일반배열에 집어넣기
return answer;
}
}
728x90
'Programmers > java' 카테고리의 다른 글
[JAVA] Programmers 숫자 문자열과 영단어 (0) | 2022.08.09 |
---|---|
[Java] Programmers 폰켓몬 (0) | 2022.08.01 |
[JAVA] Programmers 약수의 합 ☑ (0) | 2022.07.11 |
[JAVA] Programmers 문자열을 정수로 바꾸기 ☑ (0) | 2022.07.11 |
[JAVA] Programmers 자릿수 더하기 ☑ (0) | 2022.07.11 |