数组去重问题答案(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开始增长

数组去重问题答案(LeetCode第四十一题-寻找数组中的最小的缺失正整数)(1)

复杂度分析:

时间复杂度:o(n)只遍历一遍数组即可

空间复杂度:o(1)使用恒定的空间

小白刷题之路,请多指教— — 要么大器晚成,要么石沉大海

数组去重问题答案(LeetCode第四十一题-寻找数组中的最小的缺失正整数)(2)

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页