문제
내가 작성한 정답
import java.util.ArrayList;
class Solution {
public int[] solution(int[] arr, int[] delete_list) {
ArrayList<Integer> answer = new ArrayList<>();
ArrayList<Integer> del = new ArrayList<>();
for(int i:delete_list) {
del.add(i);
}
for (int i : arr) {
if(!del.contains(i)) answer.add(i);
}
return answer.stream().mapToInt(a -> a).toArray();
}
}다른 사람들의 정답
import java.util.stream.IntStream;
class Solution {
public int[] solution(int[] arr, int[] delete_list) {
return IntStream.of(arr).filter(i -> !IntStream.of(delete_list).anyMatch(s -> s == i)).toArray();
}
}
import java.util.*;
class Solution {
public int[] solution(int[] arr, int[] delete_list) {
List<Integer> list = new ArrayList<>();
for(int n : arr) {
list.add(n);
}
for(int n: delete_list) {
list.remove((Integer)n);
}
int[] answer = new int[list.size()];
for(int i=0; i<list.size(); i++){
answer[i] = list.get(i);
}
return answer;
}
}
import java.util.*;
class Solution {
public int[] solution(int[] arr, int[] delete_list) {
ArrayList<Integer> arrayList = new ArrayList<>();
for (int a : arr)
if (!isExist(delete_list, a))
arrayList.add(a);
int idx = 0;
int[] answer = new int[arrayList.size()];
for (int data : arrayList)
answer[idx++] = data;
return answer;
}
public boolean isExist(int[] arr, int data) {
for (int a : arr)
if (a == data)
return true;
return false;
}
}Share article