乐视网的一道编程题

给定一个无序的整数数组,怎么找到第一个大于 0 ,并且不在此数组的整数。比如 [1,2,0] 返回 3 [3,4,-1,1] 返回 2 [1, 5, 3, 4, 2] 返回 6 [100, 3, 2, 1, 6,8, 5] 返回 4 。要求使用 O(1) 空间和 O(n) 时间

全部评论
一趟遍历,把每个数放到正确的位置上就哦了
点赞 回复 分享
发布于 2015-10-06 23:17
hash表的空间不知道算不算
点赞 回复 分享
发布于 2015-09-30 23:57
这题左老师讲过 我问问他
点赞 回复 分享
发布于 2015-10-01 00:54
http://www.nowcoder.com/discuss/1739,直播课的第二题
点赞 回复 分享
发布于 2015-10-01 01:00
这是今年的?
点赞 回复 分享
发布于 2015-10-01 18:18
这是去现场面试的题目吗?
点赞 回复 分享
发布于 2016-08-15 22:21
桶排序,然后遍历一遍应该就行了
点赞 回复 分享
发布于 2016-08-16 09:06
类似于无序数组找中位数的思想。
点赞 回复 分享
发布于 2016-08-16 14:31
把数组里的自然数i放到数组i-1的位置上,然后遍历一遍数组第一个array[i-1]!=i就是结果
点赞 回复 分享
发布于 2016-08-16 15:20
bitmap可以做
点赞 回复 分享
发布于 2016-08-16 15:24

相关推荐

gcniz:一天写两千行你闹呢
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务