题目描述:数组[0-n] 找出其中没有出现的数字,举例说明
输入:nums = [3,0,1]
输出:2
解释:n = 3,因为有 3 个数字,所以所有的数字都在范围 [0,3] 内。2 是丢失的数字,因为它没有出现在 nums 中。
解题思路如下:1.通过数组与ArrayList的转化 2.创建出一个不缺失数字的ArrayList 3.对比两个ArrayList
/**
* 找寻丢失的数字
*/
public void getMissingMath() {
int[] nums = {0, 1, 5, 2, 3, 4, 6, 8, 9};
ArrayList<Integer> arrayListOld = new ArrayList<>();//旧数据
ArrayList<Integer> arrayList = new ArrayList<>();//最全的数据
for (int i = 0; i < nums.length; i++) {
arrayListOld.add(nums[i]);
}
for (int i = 0; i < nums.length + 1; i++) {
arrayList.add(i);
}
for (int i=0;i<arrayList.size();i++){
if (!arrayListOld.contains(arrayList.get(i))){
System.out.println("------>此处是两个数组对比,不包括的数字"+arrayList.get(i));
}
}
}