Given an array nums
containing n
distinct numbers in the range [0, n]
, return the only number in the range that is missing from the array.
Example 1:
Input: nums = [3,0,1] Output: 2 Explanation: n = 3 since there are 3 numbers,
so all numbers are in the range [0,3].
2 is the missing number in the range since
it does not appear in nums.
Example 2:
Input: nums = [0,1] Output: 2 Explanation: n = 2 since there are 2 numbers,
so all numbers are in the range [0,2].
2 is the missing number in the range since
it does not appear in nums.
Example 3:
Input: nums = [9,6,4,2,3,5,7,0,1] Output: 8 Explanation: n = 9 since there are 9 numbers,
so all numbers are in the range [0,9].
8 is the missing number in the range since
it does not appear in nums.
Constraints:
n == nums.length
1 <= n <= 104
0 <= nums[i] <= n
nums
are unique.
class Solution {
public int missingNumber(int[] nums) {
int range = nums.length;
int actualSum = (range * (range + 1))/2;
int currSum = 0 ;
for(int i=0;i
Algorithm missingNumber(nums: Array of Integer) -> Integer
Declare range as Integer
Declare actualSum as Integer
Declare currSum as Integer
Declare ans as Integer
// Calculate the range of the array
range <- Length of nums
// Calculate the sum of all numbers from 0 to range
actualSum <- (range * (range + 1)) / 2
// Initialize the sum of the elements in the array to 0
currSum <- 0
// Loop through the array to sum up its elements
For i from 0 to Length of nums - 1 Do
currSum <- currSum + nums[i]
End For
// Calculate the missing number
ans <- actualSum - currSum
// Return the missing number
Return ans
End Algorithm
Office:- 660, Sector 14A, Vasundhara, Ghaziabad, Uttar Pradesh - 201012, India