leetcode题解之Find the Duplicate Number

Posted 山里的小勇子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了leetcode题解之Find the Duplicate Number相关的知识,希望对你有一定的参考价值。

1、题目描述

2、分析

利用C++的 标准模板库 set 对数组进行读取,然后插入,如果检测到元素已经在set内部,则返回该元素值即可。时间复杂度为 O(n),空间复杂度为 O(n);

3、代码

 1 int findDuplicate(vector<int>& nums) {
 2         std::set<int> myset;
 3         std::pair< std::set<int>::iterator,bool > ret;
 4         
 5         for( int i = 0 ; i< nums.size(); i++)
 6         {
 7             ret = myset.insert( nums[i] );
 8             if( ret.second == false )
 9             {
10                 return nums[i];
11             }
12         }
13     }

 

以上是关于leetcode题解之Find the Duplicate Number的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode题解之Find All Duplicates in an Array

LeetCode题解之Find All Numbers Disappeared in an Array

LeetCode 564. Find the Closest Palindrome

poj2945:Find the Clones——题解

Lintcode196 Find the Missing Number solution 题解

#Leetcode# 997. Find the Town Judge