剑指offer: 面试题03. 数组中重复的数字
生活随笔
收集整理的這篇文章主要介紹了
剑指offer: 面试题03. 数组中重复的数字
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目:找出數組中重復的數字。
在一個長度為 n 的數組 nums 里的所有數字都在 0~n-1 的范圍內。數組中某些數字是重復的,但不知道有幾個數字重復了,也不知道每個數字重復了幾次。請找出數組中任意一個重復的數字。
示例 1:
輸入:
[2, 3, 1, 0, 2, 5, 3]
輸出:2 或 3
限制:
2 <= n <= 100000
解題:Hashset
空間復雜度O(n),時間復雜度O(1)
class Solution {
public:int findRepeatNumber(vector<int>& nums) {vector<int> hash(nums.size(), -1);for (auto n : nums) {if (hash[n] == 0) return n;++hash[n];}return -1;}
};
?
鞏固時間/空間復雜度的相關知識:
https://blog.csdn.net/haha223545/article/details/93619874
總結
以上是生活随笔為你收集整理的剑指offer: 面试题03. 数组中重复的数字的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 解决Qt+OpenGL更换图像纹理的问题
- 下一篇: 剑指offer:面试题04. 二维数组中