题解 | #缺失的第一个正整数#

缺失的第一个正整数

http://www.nowcoder.com/practice/50ec6a5b0e4e45348544348278cdcee5


/**
 * 结果只会出现在 1 ~ len(nums) +1 中,因此用一个hash key保存存在的数,value  = 1
 * 遍历hash , 从 1 ~ N中找,第一个没有标记的数就是最小缺失的正数,如果都标记过,返回len(nums) + 1
 *
*/
func minNumberDisappeared( nums []int ) int {
    // write code here
    lenN := len(nums)
	resMap := make(map[int]int) 
	for _ ,v := range nums {
		resMap[v] = 1
	}
	for i:=1;i<=lenN;i++ {
		if resMap[i] == 0 {
			return i
		}
	}
	return lenN + 1
}
全部评论

相关推荐

1 收藏 评论
分享
牛客网
牛客企业服务