Я хочу написать функцию в Java, которая принимает 2 массива в качестве входных данных и возвращает true, если меньший массив является подмножеством большего массива
Есть ли способ сделать это ниже кодаsuccint и более экономно (при сохранении O (n) сложности времени?
public boolean isArraySubset(int[] arr1, int arr2[]) {
Set<Integer> set = new HashSet<>();
int largeArr[];
int smallArr[];
if (arr1.length > arr2.length) {
largeArr = arr1;
smallArr = arr2;
} else {
largeArr = arr2;
smallArr = arr1;
}
for (int i : largeArr) {
set.add(i);
}
for (int i : smallArr) {
if (!set.contains(i)) {
return false;
}
}
return true;
}