昨天的一个面试题:如何从存放在A和B中的一亿条URL中找出A中有而B中没有的URL...

A和B中各存放着一亿条不重复的URL,URL存放时无序的,且URL是没有特征的,A和B可以试任意数据结构,也可以是存在数据库中。

如何找出A中有而B中没有的URL。

我当时给出的思路是:

依次遍历A和B,把从A和B里取出来的URL进行hashcode变换,把每条URL转换成key。相同的URL转换成相同的hashcode,然后用这个hashcode充当数组的下标或者map的key,数组的元素或map的value就是URL在A和B中的出现次数。

 

当时面试官说这是个可行的办法之一。所以我觉得应该还有更好的办法,因为要把url做 hashcode,而且要做到不冲突,那么需要的数字就要很大很大。。。就算是用byte数组或者boolean数组来存放在URL在A和B中的出现次数,所需内存也很可观。

 

大家一起讨论下。。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值