相关疑难解决方法(0)

查找两个数组是否包含相同的整数集,没有额外的空间且比NlogN更快

我遇到了这篇文章,报道了以下的面试问题:

给定两个数字数组,找出两个数组中的每个数组是否具有相同的整数集?建议一个比NlogN跑得更快但没有额外空间的算法?

我能想到的最好的是以下几点:

  1. (a)对每个数组进行排序,然后(b)沿两个数组移动两个指针并检查是否找到不同的值......但步骤(a)已经有NlogN复杂度:(

  2. (a)扫描最短的数组并将值放入地图中,然后(b)扫描第二个数组并检查是否找到了一个不在地图中的值...这里我们有线性复杂度,但我们使用额外的空间

......所以,我想不出这个问题的解决方案.

想法?


谢谢你的所有答案.我觉得很多都是对的,但我决定选择ruslik的那个,因为它提供了一个我没有想到的有趣选项.

arrays algorithm

26
推荐指数
2
解决办法
8216
查看次数

文件中的所有字谜

来源:微软访谈问题

我们得到一个包含单词的文件.我们需要确定其中存在的所有Anagrams.

有人可以建议最优化的算法来做到这一点.

我知道的唯一方法是 排序所有单词,然后检查.

algorithm anagram

8
推荐指数
1
解决办法
4263
查看次数

字谜总和测试

我们能否通过获取字符串中每个字符的ascii值,然后找到所有字符的总和,然后为其他字符串计算出相同的字符,然后比较两个值(总和)来解决七巧板测试难题?

可行吗

c anagram

-6
推荐指数
1
解决办法
706
查看次数

标签 统计

algorithm ×2

anagram ×2

arrays ×1

c ×1