Leetcode 268. Missing Number

版权声明:博客文章都是作者辛苦整理的,转载请注明出处,谢谢! https://blog.csdn.net/Quincuntial/article/details/81912646

文章作者:Tyan 博客:noahsnail.com | CSDN | 简书

1. Description

2. Solution

  • Version 1
class Solution {
public:
    int missingNumber(vector<int>& nums) {
        int flag[nums.size() + 1] = {0};
        for(int i = 0; i < nums.size(); i++) {
            flag[nums[i]] = 1;
        }
        for(int i = 0; i <= nums.size(); i++) {
            if(flag[i] == 0) {
                return i;
            }
        }
    }
};
  • Version 2
class Solution {
public:
    int missingNumber(vector<int>& nums) {
        int x = 0;
        for(int i = 0; i < nums.size(); i++) {
            x = x ^ i ^ nums[i];
        }
        x ^= nums.size();
        return x;
    }
};
  • Version 3
class Solution {
public:
    int missingNumber(vector<int>& nums) {
        int n = nums.size();
        int result = n * (n + 1) / 2;
        for(int i = 0; i < nums.size(); i++) {
            result -= nums[i];
        }
        return result;
    }
};

Reference

  1. https://leetcode.com/problems/missing-number/description/

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券