本文主要是介绍剑指offer25——复杂链表的复制,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
通过哈希表来进行复杂链表的复制。map的key值是原有链表,value是复制后的链表。
RandomListNode* Clone(RandomListNode* pHead){if(pHead==NULL )return pHead ;unordered_map <RandomListNode *,RandomListNode *>mp;RandomListNode *t=pHead ;while(t!=NULL ){mp[t]=new RandomListNode(t->label );t=t->next;}t=pHead ;while(t!=NULL ){if(t->next )mp[t]->next =mp[t->next ];if(t->random )mp[t]->random =mp[t->random ];t=t->next;}return mp[pHead ];}
这篇关于剑指offer25——复杂链表的复制的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!