剑指offer(四十八)之复杂链表的复制
来源:互联网 发布:技术支持0538泰安网络 编辑:程序博客网 时间:2024/05/01 05:17
题目描述
输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点)。
代码:
<span style="color:#000099;">import java.util.HashMap;import java.util.Iterator;import java.util.Map.Entry;import java.util.Set;public class Solution { public RandomListNode Clone(RandomListNode pHead) { HashMap<RandomListNode,RandomListNode> map = new HashMap<RandomListNode,RandomListNode>(); RandomListNode p = pHead; RandomListNode q = new RandomListNode(-1); while(p!=null){ RandomListNode t = new RandomListNode(p.label); map.put(p, t); p = p.next; q.next = t; q = t; } Set<Entry<RandomListNode,RandomListNode>> set = map.entrySet(); Iterator<Entry<RandomListNode,RandomListNode>> it = set.iterator(); while(it.hasNext()){ Entry<RandomListNode, RandomListNode> next = it.next(); next.getValue().random = map.get(next.getKey().random); } return map.get(pHead); }}</span>
0 0
- 剑指offer(四十八)之复杂链表的复制
- 剑指Offer之 - 复杂链表的复制
- 码农小汪-剑指Offer之23 -复杂链表的复制
- 剑指offer系列之24:复杂链表的复制
- (十八)剑指offer之复杂链表的复制
- 剑指offer之二十一---复杂链表的复制
- 【剑指offer】复杂链表的复制
- 剑指offer--复杂链表的复制
- 《剑指offer》复杂链表的复制
- 剑指offer:复杂链表的复制
- 剑指offer - 复杂链表的复制
- 剑指Offer--复杂链表的复制
- 剑指offer:复杂链表的复制
- 【剑指offer】复杂链表的复制
- 剑指offer-复杂链表的复制
- 剑指offer:复杂链表的复制
- 剑指offer:复杂链表的复制
- [剑指offer]复杂链表的复制
- java基础之线程
- ubuntu12.04清除释放内存空间。
- Delete Node in a Linked List
- C语言关系和逻辑运算符与分支语句
- 检测到在集成的托管管道模式下不适用的ASP.NET设置的解决方法
- 剑指offer(四十八)之复杂链表的复制
- 4系统环境搭配
- Ubuntu下搭建LAMP环境
- 异常处理
- Class and Object
- centos7安装mysql5.5二进制分发版本
- Android中Serializable和Parcelable接口用法
- Crossin先生的微信打飞机游戏(4)
- Same Tree