乐视网的一道编程题

给定一个无序的整数数组,怎么找到第一个大于 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

相关推荐

2024-12-27 23:45
已编辑
三江学院 Java
程序员牛肉:死局。学历+无实习+项目比较简单一点。基本就代表失业了。 尤其是项目,功能点实在是太假了。而且提问点也很少。第一个项目中的使用jwt和threadlocal也可以作为亮点写出来嘛?第二个项目中的“后端使用restful风格”,“前端采用vue.JS”,“使用redis”也可以作为亮点嘛? 项目实在是太简单了,基本就是1+1=2的水平。而你目标投递的肯定也是小厂,可小厂哪里有什么培养制度,由于成本的问题,人家更希望你来能直接干活,所以你投小厂也很难投。基本就是死局,也不一定非要走后端这条路。可以再学一学后端之后走测试或者前端。 除此之外,不要相信任何付费改简历的。你这份简历没有改的必要了,先沉淀沉淀
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务