我的PAT-ADVANCED代码仓:https://github.com/617076674/PAT-ADVANCED
原题链接:https://pintia.cn/problem-sets/994805342720868352/problems/994805343463260160
题目描述:
题目翻译:
1144 丢失的数字
给定N个整数,你需要找出缺失的最小的正整数。
输入格式:
每个输入文件包含一个测试用例。对每个测试用例,第一行给出一个正整数N(<= 10 ^ 5)。紧接着下一行给出N个整数,每个数字间由一个空格分隔。所有的数字都在int范围内。
输出格式:
在一行中输出输入列表中缺失的最小的正整数。
输入样例:
10
5 -25 9 6 1 3 4 2 5 17
输出样例:
7
知识点:哈希表
思路一:开一个大小为N + 1的数组nums,nums[i]保存值i
对于nums数组的初始化,我们初始化其所有值为-1。
对于读入的数字num,如果其在[0, N]范围内,则将其安放到nums数组的相应位置。
最后,我们只需从索引1开始遍历nums数组