剑指offer 复杂链表的复制

 

 首先按照原始链表的顺序将新的链表创建好,同时创建旧链表到新链表之间的map索引,

这一步完成之后便开始初始化新链表中每个节点的random指针的值

 

 

 

这时通过map【pHead】可以找到相对应的新链表的节点 newHead

而pHead -> random 是节点 p,节点 p 所对应的索引是map【p】,即节点 Q

所以newHead -> random = Q

 

 

 

posted @ 2019-12-02 16:51  寅鸷  阅读(107)  评论(0编辑  收藏  举报