/* (C) 2024 YourCompanyName */ package array; /** * Created by gouthamvidyapradhan on 04/07/2017. Given an array containing n distinct numbers taken * from 0, 1, 2, ..., n, find the one that is missing from the array. * *
For example, Given nums = [0, 1, 3] return 2. * *
Note: Your algorithm should run in linear runtime complexity. Could you implement it using * only constant extra space complexity? */ public class MissingNumber { public static void main(String[] args) throws Exception { int[] nums = {0}; System.out.println(new MissingNumber().missingNumber(nums)); } public int missingNumber(int[] nums) { int sum = 0; int n = nums.length; for (int num : nums) { sum += num; } int arrSum = (((n + 1)) * n) / 2; if (arrSum == sum) return 0; else return arrSum - sum; } }