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

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

以上仅供参考。

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

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

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

相关推荐
神仙别闹12 小时前
基于C#实现(WinForm)求解SIN(X)数值分析
c#
努力努力再努力wz16 小时前
【Qt入门系列】:按钮组件全解析:从 QAbstractButton 到快捷键事件、单选与复选机制
c语言·开发语言·数据结构·c++·git·qt·github
skywalk816316 小时前
言知(Yanzhi)系统提升建议报告和完工报告 by AutoCoder
开发语言·编程
yunn_16 小时前
单例模式两种实现方法
开发语言·c++·单例模式
我材不敲代码16 小时前
Python基础:列表详解、增删改查及常用高阶操作
开发语言·windows·python
AI玫瑰助手17 小时前
Python运算符:成员运算符(in/not in)的使用场景
开发语言·python·信息可视化
AI人工智能+电脑小能手17 小时前
【大白话说Java面试题 第77题】【Mysql篇】第7题:回表查询与全表扫描的区别?
java·开发语言·数据库·mysql·面试
水木流年追梦17 小时前
大模型入门-大模型分布式训练2
开发语言·分布式·python·算法·正则表达式·prompt
口袋里のInit18 小时前
基础知识——ARM M核入栈出栈流程
开发语言·arm开发