[职场感言] 工作一年了,聊聊三件事

一亩三分地论坛

 找回密码
 Sign Up 注册获取更多干货
E轮2.5亿美元融资
K12教育独角兽一起作业
北京-诚聘人工智能/教育/大数据岗
坐标湾区
Games Startup
招聘游戏开发工程师
游戏初创公司招聘工程师、UIUX Designer和游戏策划
码农求职神器Triplebyte:
不用海投
内推多家公司面试
把贵司招聘信息放这里
查看: 696|回复: 3
收起左侧

[Leetcode] 弱问Clone Graph解答里的HashMap的作用是什么?

[复制链接] |试试Instant~ |关注本帖
小马3107 发表于 2015-7-24 12:30:03 | 显示全部楼层 |阅读模式

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看,没有帐号?Sign Up 注册获取更多干货

x
看到很多Clone Graph的解答都用到HashMap,比如这个

当时做题的时候看了答案,以为理解了。可是现在又忘了。智商捉急啊~
stellari 发表于 2015-7-24 14:40:02 | 显示全部楼层
因为你需要一种机制实现下面两项功能:

1. 查找某个节点是否已经被拷贝过(快速查找)
2. 如果已经被拷贝过,则直接获得其拷贝(快速获得关联值)。

这两项正好是HashMap的长项。当然你也可以修改原来GraphNode,向其中加入一个指向其拷贝的引用。
回复 支持 3 反对 0

使用道具 举报

全球28万学生4.7分推荐
再试一次 发表于 2015-8-4 10:09:14 | 显示全部楼层
本帖最后由 再试一次 于 2015-8-4 10:12 编辑

因为你是在clone原来的图,也就是说,你的edges应该连接的是新的图中的新节点们。但是因为你在copy一个节点的时候可能指向的节点还没有生成。所以咱只能暂时keep 老节点的reference,有了这个hashmap,就可以找出新老节点的对应关系。更新新图中得references,这样edge的两端才能都是新的节点门。感觉表达能力有限,希望没有把你绕晕。。。。
回复 支持 1 反对 0

使用道具 举报

IM_Sybil 发表于 2018-1-17 03:35:34 | 显示全部楼层
这个题目一直不懂,谢谢两位的解答了!!!
回复 支持 反对

使用道具 举报

本版积分规则

提醒:发帖可以选择内容隐藏,部分板块支持匿名发帖。请认真读完以下全部说明:

■隐藏内容方法: [hide=200]你想要隐藏的内容比如面经[/hide]
■意思是:用户积分低于200则看不到被隐藏的内容
■可以自行设置积分值,不建议太高(200以上太多人看不到),也不建议太低(那就没必要隐藏了)
■建议只隐藏关键内容,比如具体的面试题目、涉及隐私的信息,大部分内容没必要隐藏。
■微信/QQ/电子邮件等,为防止将来被骚扰甚至人肉,以论坛私信方式发给对方最安全。
■匿名发帖的板块和方法:http://www.1point3acres.com/bbs/thread-405991-1-1.html

关闭

一亩三分地推荐上一条 /5 下一条

手机版|小黑屋|一亩三分地论坛声明

custom counter

GMT+8, 2018-5-24 12:30

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

快速回复 返回顶部 返回列表