LeetCode第四十一题-寻找数组中的最小的缺失正整数
First Missing Positive
问题简介:给定一个未排序的整数数组,找到最小的缺失正整数
注:
1.要求时间复杂度为o(n)并且只用恒定的空间
举例:
1:
输入: [1,2,0]
输出: 3
2:
输入: [3,4,-1,1]
输出: 2
3:
输入: [7,8,9,11,12]
输出: 1
解法一:
先将数组排序,当排序后的数组的最后一个元素为负或为0即缺失的为1,定义一个目标target先定义为1,遍历数组,在遍历过程中将数组值与目标值比较是否相等,即target从最小正整数1开始增长
复杂度分析:
时间复杂度:o(n)只遍历一遍数组即可
空间复杂度:o(1)使用恒定的空间
小白刷题之路,请多指教— — 要么大器晚成,要么石沉大海