0
点赞
收藏
分享

微信扫一扫

[leetcode] 268. Missing Number


Description

Given an array containing n distinct numbers taken from 0, 1, 2, …, n, find the one that is missing from the array.

Example 1:

Input: [3,0,1]
Output: 2

Example 2:

Input: [9,6,4,2,3,5,7,0,1]
Output: 8

Note:
Your algorithm should run in linear runtime complexity. Could you implement it using only constant extra space complexity?

分析

题目的意思是:找出一个数组缺少的值,这个数组只包含0~n,n+1为数组的大小。

  • 等差数列求和,然后减去整个数组的和,相减就是剩下的了。

代码

class Solution {
public:
int missingNumber(vector<int>& nums) {
int sum=0;
int n=nums.size();
for(auto a:nums){
sum+=a;
}
return 0.5*n*(n+1)-sum;
}
};

参考文献

​​[LeetCode] Missing Number 丢失的数字​​


举报

相关推荐

0 条评论