leetcode上容易出错的一个地方

leetcode上容易出现的一个错误

Line 16: Char 5: error: control may reach end of non-void function [-Werror,-Wreturn-type]

class Solution {
public:
    int Hash[100001]={0};
    int findRepeatNumber(vector<int>& nums) {
        for(int i=0;i<nums.size();i++)
        {
            if(Hash[nums[i]]==0)
            {
                Hash[nums[i]]++;
            }else
            {
                return nums[i];
                break;
            }
        }
    }
};

错误在于vector如果是空的就没有返回值了,要考虑到这种情况

正确代码

class Solution {
public:
    int Hash[100001]={0};
    int findRepeatNumber(vector<int>& nums) {
        for(int i=0;i<nums.size();i++)
        {
            if(Hash[nums[i]]==0)
            {
                Hash[nums[i]]++;
            }else
            {
                return nums[i];
                break;
            }
        }
        return 0;
    }
};

posted @ 2020-10-03 20:56  韩天尊  阅读(158)  评论(0)    收藏  举报