剑指offer:复杂链表的复制
用到了哈希表映射,原指针pHead,在定义个指针newHead,把原指针pHead指向的指传给newHead,他两之间形成一种映射,把原指针指向的下一个值也传到newHead,也把原指针指向random映射到newHead->random,到这就复制完了,返回newHead!!!
#include <unordered_map> class Solution{ public: unordered_map<RandomListNode* , RandomListNode*> mp; RandomListNode* Clone(RandomListNode * pHead){ if(pHead==nullptr) return nullptr; RandomListNode* newHead = new RandomListNode(pHead->label); mp[pHead] = newHead; newHead->next = Clone(pHead->next); if(pHead->random !=nullptr) newHead->random = mp[pHead->random]; return newHead; } };#剑指offer##23届找工作求助阵地#