【LeetCode】217. Contains Duplicate(sort,hash,map)
来源:互联网 发布:网络信息安全的特点 编辑:程序博客网 时间:2024/06/03 16:09
Question
Given an array of integers, find if the array contains any duplicates. Your function should return true if any value appears at least twice in the array, and it should return false if every element is distinct.
Code
使用map,用了C++11的新特性auto,十分智能方便哈哈~
bool containsDuplicate(vector<int>& nums) { map<int, int> cnt; for (auto num : nums) cnt[num]++; for (auto num : cnt) if (num.second > 1) return true; return false; }
不过时间方面有点差,用了96ms
如果使用hash,减到48ms
map使用红黑树实现,查找速度是log(n)级别;
hash查找速度基本和数据量大小无关。
不过并非任何时候hash都比map快,因为hash需要hash函数,构造会比较慢。
另外,本题可以对数组进行排序,之后判断相邻元素是否有相同的即可。
0 0
- 【LeetCode】217. Contains Duplicate(sort,hash,map)
- Leetcode 219 - Contains Duplicate II(hash or sort)
- Leetcode 217 - Contains Duplicate(hash)
- [leetcode] 219 Contains Duplicate II(map)
- #leetcode#217 Contains Duplicate (map&排序)
- [leetcode][hash] Contains Duplicate II
- [leetcode][hash] Contains Duplicate III
- Leetcode#217 Contains Duplicate $hash
- LeetCode Contains Duplicate II(hash)
- LeetCode 217. Contains Duplicate
- [leetcode] 217.Contains Duplicate
- 【leetcode】217. Contains Duplicate
- 【Leetcode】217. Contains Duplicate
- [LeetCode]217. Contains Duplicate
- 217. Contains Duplicate LeetCode
- LeetCode 217. Contains Duplicate
- [LeetCode]217. Contains Duplicate
- 【LeetCode】217. Contains Duplicate
- (java)Valid Palindrome
- vim配置
- JSP标签JSTL(4)--URL
- 统计学习笔记(4)——朴素贝叶斯法
- 手把手带你自制Linux系统之六 编译内核及busybox完成系统定制
- 【LeetCode】217. Contains Duplicate(sort,hash,map)
- 基于servlet的文件下载
- storm 初识
- 纯代码创建UIDatePicker
- pip和pip3同时使用
- lump搭建环境知识点
- Git全解析之用起来先
- 如何缩小或者扩大数据文件 How to Resize a Datafile (Doc ID 1029252.6)
- 使用gradle做第一个java项目