相关疑难解决方法(0)

区分多个元素和两个数组?

我的一位朋友在接受采访时被问到这个问题 -

  • 您已经给出了两个大小为10的整数数组.
  • 两者都包含9个相等的元素(比如说1到9)
  • 只有一个元素是不同的.

你怎么会找到不同的元素?您可以采取哪些不同的方法?

一个简单但冗长的方法是 - 对两个数组进行排序,继续比较每个元素,在进行错误比较时,您将获得结果.

那么有什么不同的方法呢?在面试中指定逻辑.不期望特定语言的特定代码.伪代码就足够了.

(每个答案请提交一种方法)

我提出这个问题的目的是,当数组大小很小时就可以了.但是当数组大小增加时,你必须考虑一种非常有效的方法.在这种情况下,使用比较绝不可取.

arrays algorithm logic data-structures

10
推荐指数
3
解决办法
7332
查看次数

给定具有多个重复条目的阵列,重复输入O(N)时间和恒定空间

我们给出了一个大小为N的数组,其中包含0到N-2范围内的整数,包括0和N-2.

该阵列可以有多个重复的条目.我们需要在O(N)时间和常量空间中找到一个重复的条目.

我正在考虑获取阵列中所有entires的乘积和总和,以及0到N-2范围内所有数字的乘积和总和.

然后,总和的差异和产品的划分将给出两个方程式.如果给出只有两个重复的条目,这种方法会起作用,但由于可能有两个以上,我认为我的方法失败了.

有什么建议?

编辑:数组是不可变的.我意识到这是一个重要的信息,我很抱歉我忘了早些提到这一点.

java arrays algorithm

7
推荐指数
1
解决办法
1334
查看次数

找出重复的号码

在数组[10]中,数组中有1到9的数字,其中一个数字重复(重复数也在1到9之间)如何在不使用循环的情况下找到重复的数字,并且数组可以被横向移动只有一次从上到下.

这不是作业,这是在采访中被问到的

c

4
推荐指数
2
解决办法
747
查看次数

标签 统计

algorithm ×2

arrays ×2

c ×1

data-structures ×1

java ×1

logic ×1