[LeetCode 解题报告]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.

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?

class Solution {
public:
    int missingNumber(vector<int>& nums) {
        if (nums.empty())
            return 0;
        
        int sum = 0, n = nums.size();
        for (int i = 0; i < nums.size(); i ++)
            sum += nums[i];
        
        return n*(n+1)/2 - sum;
    }
};
发布了480 篇原创文章 · 获赞 40 · 访问量 46万+

猜你喜欢

转载自blog.csdn.net/caicaiatnbu/article/details/104235438