268. Missing Number
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?
Credits:
一串连续的数,找到缺的那个
C++(22ms):
1 class Solution { 2 public: 3 int missingNumber(vector<int>& nums) { 4 int len = nums.size() ; 5 int sum = (0+len)*(len+1)/2 ; 6 for(int i = 0 ; i < len ; i++){ 7 sum -= nums[i] ; 8 } 9 return sum ; 10 } 11 };
C++(26ms):
1 class Solution { 2 public: 3 int missingNumber(vector<int>& nums) { 4 int len = nums.size() ; 5 int res = len ; 6 for (int i = 0 ; i < len ; i++){ 7 res ^= i ^ nums[i] ; 8 } 9 return res ; 10 } 11 };