【剑指offer】4.4分解让复杂问题简单化——面试题26:复杂链表的复制
来源:互联网 发布:055 知乎 编辑:程序博客网 时间:2024/05/01 22:39
使用map的思想
//题目描述////输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点)。 #include<windows.h>#include<map>#include<iostream>using namespace std;struct RandomListNode { int label; struct RandomListNode *next, *random; RandomListNode(int x) : label(x), next(NULL), random(NULL) { }};class Solution {public: RandomListNode* Clone(RandomListNode* pHead) {if(pHead==NULL)return NULL;RandomListNode*p=pHead;//RandomListNode*root=(RandomListNode*)malloc(sizeof(RandomListNode));RandomListNode*root=new RandomListNode(0);RandomListNode*r=root;map<RandomListNode*,RandomListNode*>m;while(p!=NULL){//RandomListNode*q=(RandomListNode*)malloc(sizeof(RandomListNode));//q->label=p->label;RandomListNode*q=new RandomListNode(p->label);q->random=p->random;m[p]=q;r->next=q;r=r->next;p=p->next;}r=root->next;while(r!=NULL){r->random=m[r->random];r=r->next;}return root->next; }};
0 0
- 【剑指offer】4.4分解让复杂问题简单化——面试题26:复杂链表的复制
- 【剑指offer】4.4分解让复杂问题简单化——面试题28:字符串的排列
- 剑指offer:(26)分解让复杂问题简单化 :复杂链表的复制
- 【剑指offer】4.4分解让复杂问题简单化——面试题27:二叉搜索树与双向链表
- 剑指offer 26题 【分解让复杂问题简单】复杂链表的复制
- 分解让复杂问题简单化-面试题27-二叉搜索树与双向链表
- 《剑指offer》刷题笔记(分解让复杂问题简单):复杂链表的复制
- 分解让复杂问题简单化-面试题28-字符串的排列与组合
- [剑指offer][面试题26]复杂链表的复制
- 剑指offer 面试题26复杂链表的复制
- 【剑指offer】面试题26:复杂链表的复制
- 剑指Offer:面试题26 复杂链表的复制
- 《剑指Offer》面试题26:复杂链表的复制
- 剑指offer面试题26-复杂链表的复制
- 剑指offer-面试题26:复杂链表的复制
- 剑指Offer----面试题26:复杂链表的复制
- 剑指offer 面试题26 复杂链表的复制
- 剑指offer面试题26:复杂链表的复制
- 【ITOO】DTO
- 走出低效率的困境
- [Leetcode]2.Add Two Numbers @python
- 快速排序
- Linux下的tar压缩解压缩命令详解
- 【剑指offer】4.4分解让复杂问题简单化——面试题26:复杂链表的复制
- 《Effective Modern C++》翻译--条款3: 理解decltype
- 正则表达 简要记录
- 【剑指offer】4.4分解让复杂问题简单化——面试题27:二叉搜索树与双向链表
- bzoj2243: [SDOI2011]染色
- nodejs Tips4
- 文献中的英文词汇
- ADB基本的命令讲解教程
- 【剑指offer】4.4分解让复杂问题简单化——面试题28:字符串的排列