`
X13144131X
  • 浏览: 4434 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
最近访客 更多访客>>
社区版块
存档分类
最新评论

百万数据去掉唯一重复的一个

阅读更多

今天面试的过程中,xxx公司的技术总监问了一个问题,本人觉得在某种情况下是可行的,但是貌似被否认了。求解释!

 

要求如下:从1-100W的数据,中间有且只有一个重复的,个数为100W零1,找出来即可。

 

我想的结果如下:假设数据是无序,但是1-100W之间有100W个数字,加上重复的一个,即100W零1.

 

步骤一、先将这100W零1按大小排序。

 

步骤二、首+尾=100W零1,取值往中间靠近。

 

步骤三、如果相加的和大于理论上的中间值(肯定是大于理论上的中间值)。则表示这两个数字中的一个必定是重复的。

 

然后分别用这两个数字,根据索引去取特定位置上的值来做判断即可得出。

 

如果题目是这样的,我觉得没错啊!

 

Q:如果100W条数据里面,只有一个是重复的,而且这些数值并不是像1、2、3、4...  这样,应该怎么去实现?

0
8
分享到:
评论
9 楼 huoyunshen88 2012-09-13  
hadoop大数据处理。
8 楼 sharpice 2012-09-13  
主要还是性能问题,光排序100W个数就花掉不少时间了
提供一个算法不知道可行不,利用二叉树,从根节点开始比较,大的往右节点继续比较,小的往左节点比较。如果所比较的节点,已经没有子节点,则大的存放于右节点,小的存放于左节点。
这样类似于二分法查找,但不用排序,速度会快很多
7 楼 fulink 2012-09-13  
到底是数字还是数据?
这可是有差别的
6 楼 wangyanlong0107 2012-09-13  
主要考虑性能问题,100w的排序怎么排呢?
5 楼 flatcsun 2012-09-13  
第一步排序的过程中,要每个数据相互比较一次,比较的时候就可以把重复的找出来。
4 楼 kkppccdd 2012-09-13  
排序太慢了,最快也要O(nLogn)。用HASH表實現的Set,時間複杂度為O(n*O(hash())),如果設計的hash算法的時間複杂度是常數,則縂複杂度為O(n)。
3 楼 worldterminator 2012-09-13  
排序即可。
2 楼 cx372877498 2012-09-12  
兄弟貌似题目你就理解错了,不是说是1到100w,就好像是100w到200w它也有100w个数字啊。就是这个数字不是一个有序的组合。
1 楼 hiqrf 2012-09-12  
101W个数相加 与 从1加到100W的差值 就是重复数的字

相关推荐

    去除重复数据,去除重复数据算法

    根据给定文件的信息,本文将围绕“去除重复数据”这一主题进行深入探讨,重点解析一个简单易懂且适用性广的去重算法,并通过具体的代码示例来展示其实现过程。 ### 去除重复数据的基本概念 在计算机科学中,“去除...

    sql去掉重复的数据 完全相同的数据去掉重复 及优化

    ### SQL去掉重复的数据及优化 在数据库管理与应用开发中,数据去重是一个常见的需求,尤其是在数据清洗、数据整合等场景下尤为重要。本文将详细探讨如何利用SQL查询语句来去除表中的重复记录,并在此基础上进一步...

    易语言学习进阶去除重复数据源码

    去除重复数据是为了确保数据的唯一性,这在统计分析、数据清洗或构建数据库时非常关键。在易语言中,可以使用各种方法来实现这一目标,比如遍历数据源并比较每个元素,或者利用集合(Set)数据结构的特性,因为集合...

    易语言最简单的数据去除重复源码

    总的来说,"易语言最简单的数据去除重复源码"这个主题为我们提供了一个了解如何在易语言环境下处理数据重复问题的入口。通过学习和实践,我们可以更好地掌握易语言的编程技巧,并将其应用于实际的数据处理任务中。

    matlab中如何去掉数组中重复的值

    在数据处理过程中,去除数组中重复的值是一个常见的问题,本文将介绍 Matlab 中去掉数组中重复的值的方法。 unique 函数 Matlab 提供了一个名为 unique 的函数,该函数可以删除数组中的重复值。unique 函数的基本...

    基于MD5算法的重复数据删除技术的研究与改进

    其基本原理是在数据写入或备份过程中识别并去除重复的数据副本,从而有效利用存储空间。这项技术广泛应用于数据中心、云计算环境和个人存储设备中,有助于降低存储成本、提高存储效率。 #### 三、MD5算法在重复数据...

    如何删除表中重复数据

    这条语句首先创建了一个名为`temp_table`的临时表,并通过`SELECT DISTINCT`子句来选择`original_table`表中不重复的所有列的数据。 2. **清空原表**: ```sql TRUNCATE TABLE original_table; ``` 使用`...

    重复数据删除技术源代码C语言

    8. **去重策略**:去重策略包括全局去重(全局数据池中只保留一个副本)和增量去重(只删除新数据中的重复)。1.4.1版本可能支持这两种策略,并根据应用场景灵活选择。 9. **性能优化**:为了处理大数据,优化是必...

    Excel重复数据怎么去掉 -删除重复项-功能轻松去重.docx

    因此,删除重复数据行是 Excel 数据处理中一个非常重要的步骤。下面,我们将详细介绍 Excel 删除重复数据行的方法和技巧。 一、删除重复项功能的使用 Excel 提供了一个名为"删除重复项"的功能,该功能可以快速删除...

    sql+如何去重复数据,数据库去重复数据

    `ROW_NUMBER()`是一个常用的窗口函数,可以为每一行分配一个唯一的数字。 **示例:** 使用`ROW_NUMBER()`函数去除基于`employee_id`和`order_date`的重复记录,并保留每组中的第一条记录: ```sql WITH cte AS ( ...

    oracle中如何删除重复数据

    为了提高效率,应先创建一个临时表存储重复数据,然后删除: ``` CREATE TABLE 临时表 AS SELECT 字段1, 字段2, COUNT(*) FROM 表名 GROUP BY 字段1, 字段2 HAVING COUNT(*) > 1 DELETE FROM 表名 a ...

    实例介绍删除数据库中重复数据的几个方法

    `语句可以直接获取一个去除完全重复记录后的结果集。这个操作不会修改原始表,而是返回一个新的结果集。 2. **删除重复记录(保留一条)** - 创建一个临时表,并使用`SELECT DISTINCT * INTO #Tmp FROM 表名;`...

    检查GridControl列表视图某列是否有重复数据

    在IT领域,尤其是在软件开发中,数据管理是一个关键部分,特别是在使用像GridControl这样的控件时。...但以上步骤提供了一个基础框架,可以帮助你开始解决如何检查GridControl列表视图中是否存在重复数据的问题。

    最简单的数据去除重复模块源码

    标题中的“最简单的数据去除重复模块源码”指的是一个用于处理数据去重的程序源代码,这通常涉及到编程和数据处理领域。数据去重是指在数据集中删除重复的记录,以确保数据的唯一性和准确性。在易语言环境中,这样的...

    repNum.rar_数据重复_重复数

    在这个场景中,"repNum.txt"文件很可能包含了一种或多种用于检测和去除重复数据的方法。 去除重复数据的常见方法有以下几种: 1. **基于哈希值**:通过计算每个数据记录的哈希值来快速检查是否重复。如果两个记录...

    QQ数据重复过滤工具

    在数据处理领域,重复数据是一个常见的问题,特别是在大型数据库或日志文件中。重复数据可能会导致统计结果偏差,占用不必要的存储空间,并可能导致系统性能下降。QQ数据重复过滤工具通过先进的算法和技术,有效地...

    完整版组合框、列表框去重复数据妙法.rar

    例如,VB6中的ComboBox控件有一个RemoveDuplicates属性,可以设置为True来自动去除重复。 6. 多步处理:在大型数据集的情况下,可以分批加载数据并即时去重,防止一次性处理大量数据导致的性能问题。 7. 实时监控...

    利用易语言数据结构去除重复项源码.7z

    本主题涉及的是如何利用易语言的数据结构来处理重复数据,这是一个在编程中常见的问题,特别是在数据处理、数据分析和算法设计中。 易语言的数据结构主要包括数组、列表、集合、字典等,这些数据结构在处理数据时各...

    操作Excel文档,筛选,查询的数据,过滤重复的数据。

    在Excel中,对数据进行筛选、查询和去除重复项是高效管理和分析数据的关键步骤。以下是对这些知识点的详细说明: 1. **筛选数据**:筛选功能允许用户根据特定条件显示或隐藏工作表中的行。在Excel中,可以使用...

Global site tag (gtag.js) - Google Analytics