给定一个排好序的数组,然后求出丢失的数字

思路

只要两个相邻数的差不是1,则大的减1即为缺少的数

public class OptMain {
    public static void main(String[] args) {
        int[] arr = {2,4,5,6,7,8};
        missNum(arr);
    }
    // 给定一个排好序的数组,然后求出丢失的数字
    private static void missNum(int[] arr){
        int len = arr.length - 1;
        if(len < 1){
            System.out.println("数组个数少于2个,数组不合法");
            return;
        }
        for (int i = len; i > 0 ; i--) {
            int j = arr[i] - arr[i-1];
            if(j != 1){
                System.out.println("缺少数字为:"+(arr[i] - 1));
                return;
            }
        }
        System.out.println("没有找到缺少的数字");
    }
}
原文地址:https://www.cnblogs.com/dongma/p/13168796.html