【数组】重复的数字

数组中重复的数字

http://www.nowcoder.com/questionTerminal/623a5ac0ea5b4e5f95552655361ae0a8

1.考虑边界情况
数组是否为空
数组值是否在0-n-1范围内
2.限定条件:只要输出一个就可以,必须是第一个重复的数字
3.方法:

  1. 高级法
    此大法利用了哈希的特性,但不需要额外的存储空间。 因此时间复杂度为O(n),不需要额外空间!
    时间复杂度:O(n),因为每个位置上的数字最多只交换一次就可以放到正确位置上
    空间复杂度:O(1),不需要再额外开辟空间

  2. 哈希表+遍历
    时间复杂度:O(n),每个位置上元素对应设置一次
    空间复杂度:O(n),另外开辟一个大小为n的哈希序列

  3. 暴力遍历

全部评论

相关推荐

10-20 11:11
辽宁大学 营销
点赞 评论 收藏
分享
10-16 15:48
算法工程师
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务