【LeetCode】面试题 17.04. 消失的数字(C++)

1 题目描述

数组nums包含从0到n的所有整数,但其中缺了一个。请编写代码找出那个缺失的整数。你有办法在O(n)时间内完成吗?
注意:本题相对书上原题稍作改动

2 示例描述

2.1 示例1

输入:[3,0,1]
输出:2

2.2 示例2

输入:[9,6,4,2,3,5,7,0,1]
输出:8

3 解题思路

先排序,后遍历,碰到下标和数字不同即退出。

4 源码详解(C++)

class Solution {
    
    
public:
    int missingNumber(vector<int>& nums) {
    
    
        sort( nums.begin() , nums.end() ) ;
        int i ;
        for ( i = 0 ; i < nums.size() ; i ++ )
        {
    
    
            if ( nums[i] != i )
            {
    
    
                break ;
            }
        }
        return i ;
    }
};

猜你喜欢

转载自blog.csdn.net/Gyangxixi/article/details/114434467