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.

这道题和剑指OFFER上的面试题51很像,只是51题题目给出了数组长度以及数组中存储数字的范围。有点类似于桶排序。代码如下:

public static boolean containsDuplicate(int[] nums) {if (nums == null || nums.length <= 0) {return false;}for (int i = 0; i < nums.length; i++) {if (nums[i] < 0 || nums[i] > nums.length - 1) {return false;}}for (int i = 0; i < nums.length; i++) {if (nums[i] < 0 || nums[i] > nums.length - 1) {return false;}while (nums[i] != i) {if (nums[i] == nums[nums[i]]) {// int result = nums[i];return true;}int temp = nums[i];nums[i] = nums[temp];nums[temp] = temp;}}return false;}

  而这道题可想到的有两种方法,首先是排序,对排序后的数组进行遍历,由于只是返回是否有重复元素,并不是返回重复的值,所以相邻元素比较即可

还有一种方法是hashtable每次add之前判断是否已经存在,如果存在直接返回true然后结束,如果不contain就false

转载于:https://www.cnblogs.com/gracyandjohn/p/4571250.html

leetcode之Contains Duplicate相关推荐

  1. LeetCode 316. Remove Duplicate Letters--贪心--Java,C++,Python解法

    题目地址:Number of Longest Increasing Subsequence - LeetCode 做这道题目前建议先做:Longest Increasing Subsequence - ...

  2. LeetCode 287---Find the Duplicate Number

    问题链接:LeetCode 287-Find the Duplicate Number 题目大意 : 找出序列中唯一一个重复出现的数字,且只能使用o(1)的额外空间 实现代码如下: public cl ...

  3. LeetCode 316 Remove Duplicate Letters(删除重复字符)

    问题:给出一个字符串,要求删除重复字符,字典序是最小并且保持字符的相对位置. 思路: 方法一,使用递归算法,在出现只出现一次的前缀字符串中确定最小字符,然后在剩下的子串中递归. 方法二,使用栈做,先记 ...

  4. leetcode 1044. Longest Duplicate Substring | 1044. 最长重复子串(Rabin Karp算法)

    题目 https://leetcode.com/problems/longest-duplicate-substring/ 题解 这题暴力超时,看了 Related Topics,以及 Hint,主要 ...

  5. leetcode 316. Remove Duplicate Letters | 316. 去除重复字母(单调栈解法)

    题目 https://leetcode.com/problems/remove-duplicate-letters 题解 关于什么是"字典序" 字典序,换成数字更好理解一点 a:1 ...

  6. leetcode 220. Contains Duplicate III | 220. 存在重复元素 III (Treeset解法+分桶解法)

    题目 https://leetcode.com/problems/contains-duplicate-iii/ 题解 方法1:Treeset 解法,滑动窗口 & 二分 思路参考:https: ...

  7. LeetCode 316. Remove Duplicate Letters

    (自己开发的博客,欢迎访问)https://www.weiboke.online 316. Remove Duplicate Letters Given a string which contains ...

  8. LeetCode 217. Contains Duplicate

    Given an array of integers, find if the array contains any duplicates. Your function should return t ...

  9. LeetCode Find the Duplicate Number 找重复出现的数(技巧)

    题意: 有一个含有n+1个元素的数组,元素值是在1-n之间的整数,请找出其中出现超过1次的数.(保证仅有1个出现次数是超过1的数) 思路: 方法一:O(nlogn).根据鸽笼原理及题意,每次如果< ...

  10. LeetCode 所有题目总结

    文章目录 做题注意事项 题目分类 1.位运算 2.字符串题型 3.TopK 问题--最大堆/最小堆 4.链表 5.动态规划 easy Medium hard 6.贪心 7.树 8.图 9.数学题 10 ...

最新文章

  1. 枚举的遍历和字符串转枚举,枚举转字符串
  2. 【golang】Go语言学习-select用法
  3. mysql的分片系统_MySQL分片
  4. C++工作笔记-对static_cast的进一步认识(强制转换改变内存,并且删除存在的问题)
  5. ueditor 在线附件和在线图片路径错误BUG补丁
  6. c语言飞扬的小鸟程序,C语言实现flappy bird游戏
  7. 任正非认为自己的成功没有秘诀
  8. c语言可以发现注释错误,编译时可以发现注释中的错误_c语言中不允许使用
  9. java生成gif_Java生成动态GIF图片
  10. python错误:ImportError: DLL load failed: 找不到指定的程序,from PyQt6 import QtCore, QtGui, QtWidgets
  11. 可以出题的答题小程序
  12. IEEE1588 ( PTP ) 协议简介
  13. 干货 | 华为内部几近满分的项目管理PPT
  14. 章节9 性能和资源使用 - Segger SystemView使用手册(译文)
  15. 数据结构名词解释以及简答
  16. 那些惊艳了岁月的诗词
  17. Hive 连接 secured ES 踩坑日记
  18. scratch拼图编程_使用模块化和项目拼图进行编程。 使用最新的抢先体验版的教程
  19. 戴尔发布XPS笔记本等新品;虎牙全面采用亚马逊云科技专用数据库服务 | 全球TMT...
  20. 实体门店为什么要做共享股东模式

热门文章

  1. 5.1傅里叶展开,傅里叶级数推导--非常棒
  2. P2P(Peer to Peer)网络的原理
  3. python中计算DataFrame,Series的数据频率
  4. html网页制作中的问题,网页制作中注意应用HTML标签的问题
  5. bat脚本保存dir结果_DOS批处理脚本及应用举例
  6. Eclipse 使用和问题总结
  7. Futter基础第21篇: 实现普通对话框、列表对话框、单选对话框、Toast提示
  8. Android调试wifi使用wpa_supplicant和wpa_cli总结
  9. python基础 网络编程
  10. Winform打包-NSIS 检测.NetFramework版本(亲测可用)