乐视网的一道编程题

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

相关推荐

04-17 10:16
门头沟学院 Java
不河狸啊:为什么我的是已送达,连已读都没有
点赞 评论 收藏
分享
04-25 19:29
已编辑
宁波大学 运营
被普调的六边形战士很高大:你我美牛孩
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务