C#面:如有50万个int类型的数字,现在需要判断⼀下⾥⾯是否存在重复的数字,请简要说⼀下思路

  1. 可以使用 List 集合的方法:Distinct() 或者 GroupBy() 。
  2. 可以使用 Dictionary,Key值唯一性。
  3. 可以使用 HashSet ,它的元素具有唯一性:(但是内存可能会爆)
  4. 新建一个HashSet,不断Add数字,Add只要返回次False就说明有数字重复。
  5. 先排序,再两两比较。

以上仅供参考。

这个问题有很多解决的方法,对于这个提问的出发点有很多不同的看法,个人认为,到底如何回答或者处理,没有标准答案,也许也并不需要。

有的人说这个问题本身就没有意义。

我觉得由一个问题引发的讨论和思考,才是问题本身的价值。

相关推荐
天若有情6737 小时前
程序员原创|借鉴JS事件冒泡,根治电脑文件混乱的“冒泡整理法”
开发语言·javascript·windows·ecmascript·电脑·办公·日常
特种加菲猫8 小时前
继承,一场跨越时空的对话
开发语言·c++
工程师0079 小时前
C# 继承、多态、虚方法表(VTable)原理
c#·多态·继承·虚方法表
玩转单片机与嵌入式9 小时前
玩转边缘AI(TInyML):需要掌握的C++知识汇总!
开发语言·c++·人工智能
茉莉玫瑰花茶9 小时前
Qt 信号与槽 [ 1 ]
开发语言·数据库·qt
AI人工智能+电脑小能手10 小时前
【大白话说Java面试题】【Java基础篇】第30题:JDK动态代理和CGLIB动态代理有什么区别
java·开发语言·后端·面试·代理模式
张健115640964811 小时前
临界区和同一线程上锁
java·开发语言·jvm
头发够用的程序员11 小时前
C++和Python面试经典算法汇总(一)
开发语言·c++·python·算法·容器·面试
夜猫逐梦11 小时前
【逆向经验】一篇文章讲透为什么CE搜不到Python游戏的内存值
开发语言·python·游戏