其他分享
首页 > 其他分享> > 确实的第一个正数

确实的第一个正数

作者:互联网

 

func firstMissingPositive(nums []int) int {
    size:=len(nums)
    for i:=0;i<size;i++{
        if nums[i]<=0{
            nums[i]=size+1
        }
    }

    for i:=0;i<size;i++{
        origin:=abs(nums[i])
        if origin<=size{
            nums[origin-1]=-abs(nums[origin-1])  //注意要取绝对值
        }
    }
    for i:=0;i<size;i++{
        if nums[i]>0{
            return i+1
        }
    }
    return size+1
}
func abs(a int) int{
    if a < 0{
        return -1*a
    }
    return a
}

 

标签:return,第一个,nums,int,i0,确实,func,正数,size
来源: https://www.cnblogs.com/-citywall123/p/16344043.html