Description
Given an integer array nums
, return true
if any value appears at least twice in the array, and return false
if every element is distinct.
Example 1:
Input: nums = [1,2,3,1] Output: true
Example 2:
Input: nums = [1,2,3,4] Output: false
Example 3:
Input: nums = [1,1,1,3,3,4,3,2,4,2] Output: true
Constraints:
1 <= nums.length <= 105
-109 <= nums[i] <= 109
Code
std::set is typically implemented as a binary search tree(RB tree in GCC 4.8). It costs O(nlogn) to construct. While std::unordered_set uses hash table, O(n) is expected. That's why @oynasun observes unordered_set is faster.