gpt4 book ai didi

合并联系人的算法

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:41:18 26 4
gpt4 key购买 nike

我正在做一个项目,需要找到类似的联系人。

I/P:它的形式是

C1 -> abc@gmail.com,xyz@gmail.com ... (could be any size)C2 -> asdas@gmail.comC2 -> friedzie@gmail.com,myfriend@yahoo.comC4 -> brothers@yahoo.com,asdas@gmail.com

我想将 C2、C4 这样的联系人分组并将它们合并在一起,因为它们共享相同的电子邮件。

最佳答案

将地址哈希到联系人,当您遇到 HashMap 中已有的地址时,即为共享联系人。

大概是 O(N)


编辑:

如果有两个以上的候选人具有匹配的电子邮件,他们都会被分组。

例如

C1 A@gmail.com
C1 B@gmail.com
C2 A@gmail.com
C2 C@gmail.com
C3 B@gmail.com
C3 D@gmail.com

第一关:
A@gmail.com => C1
B@gmail.com => C1
+ A@gmail.com => C2(已经是 C1)=> 合并 C1 -> C2
C@gmail.com => C2B@gmail.com => C3(已经是 C1)=> 合并 C1 -> C3D@gmail.com => C3

现在您知道需要合并:C2 合并到 C1,C3 合并到 C1。

关于合并联系人的算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39985191/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com