copy a random link
1 /** 2 * Definition for singly-linked list with a random pointer. 3 * struct RandomListNode { 4 * int label; 5 * RandomListNode *next, *random; 6 * RandomListNode(int x) : label(x), next(NULL), random(NULL) {} 7 * }; 8 */ 9 class Solution { 10 public: 11 RandomListNode *copyRandomList(RandomListNode *head) { 12 if(head == NULL) return NULL; 13 //将新节点复制到原来节点后面 14 RandomListNode *copy; 15 RandomListNode *p = head; 16 RandomListNode *tmp; 17 while(p!=NULL) 18 { 19 copy = new RandomListNode(p->label); 20 tmp = p->next; 21 p->next = copy; 22 copy->next = tmp; 23 p = tmp; 24 } 25 //将新结点与随机结点相连接 26 p = head; 27 copy = head->next; 28 while(p!=NULL && copy!=NULL) 29 { 30 copy->random = ((p->random)?p->random->next:NULL); 31 p = ((copy->next)?copy->next:NULL); 32 copy = ((p->next)?p->next:NULL); 33 } 34 //将新节点与原结点拆开 35 p = head; 36 head = copy = head->next; 37 while(p!=NULL && copy!=NULL) 38 { 39 p->next = ((copy->next)?copy->next:NULL); 40 p = ((p->next)?p->next:NULL); 41 copy->next = ((p)?p->next:NULL); 42 copy = ((copy->next)?copy->next:NULL); 43 } 44 return head; 45 } 46 };
转载于:https://www.cnblogs.com/dzy521/p/9144690.html
copy a random link相关推荐
- Bootstrap File Input 真正 解决跨域问题
今天一个项目需要 做文件上传 ,图方便 就使用了Bootstrap File Input 插件 问题来了 文件放置服务器和 活动服务器 是分开的 于是涉及到了 一个ajax 跨域请求问题 后端使 ...
- 【数据竞赛】Kaggle神技:一项堪比Dropout的NN训练技巧!
↑↑↑关注后"星标"kaggle竞赛宝典 kaggle竞赛宝典 作者:杰少 Swap Noise: 一种论文中所没有的NN神技 01 背景 本文介绍一种论文中所没有,但是却效果极佳 ...
- 2叉树排序缺失元素查找
为什么80%的码农都做不了架构师?>>> 问题 在一组相同类型的数据中(对象.数组.字符串.整形等任意类型的数据结构)请用时间空间最优的方式查找缺失的一项.例如有一组数据[&q ...
- GNU LGPL协议
\qquad 下面是LGPL协议2.1版的完整协议文本: GNU LESSER GENERAL PUBLIC LICENSEVersion 2.1, February 1999Copyright (C ...
- JS红宝书·读书笔记
JavaScript高级程序设计 花了半个多月的时间,终于又把"JS红宝书"又撸了一遍. 第一次读"JS红宝书"还是2015年初学JS的时候,那时候只是把语法部 ...
- mini-XML 中文文档
FROM: http://blog.csdn.net/bluesonic/article/details/3887143#mxmlLoadFd Mini-XML 程序员开发手册, Version 2. ...
- minixml中文手册
Mini-XML 程序员开发手册, Version 2.5 序言 本文结构 词法约定 缩略语 其他参考 法律信息 构建,安装,以及打包Mini-XML 编译 Mini-XML 使用 Visual C+ ...
- Mini-XML 程序员开发手册, Version 2.5(转)
Mini-XML 程序员开发手册, Version 2.5 目录 中文翻译:Z.F , mail: zhfjyq@gmail.com ,http://blog.csdn.net/bluesonic 序 ...
- HCTF-2018-Official-Writeup
转载至官方writeup Web Warmup web签到 首先打开然后看F12啦,注释里提示是source.php,php审计,问题出在 $_page = urldecode($page); $_p ...
最新文章
- 三代组装软件canu学习笔记
- Google Chrome 悄悄升级 WebGL 2.0 标准
- 使用scanf()函数接收带空格的字符串
- Java的知识点29—— 文件字符流、字节数组流
- Mr. Main and Windmills 模拟,计算几何(昆明)
- CentOS系统配置solr
- 使用literal语法格式化字符串
- Java设计模式(8)组合模式(Composite模式)
- ijkplayer 消息循环处理过程分析
- 3+1保障:高可用系统稳定性是如何炼成的?
- Excel用图标集展示数据
- 页面报错500是什么意思_解决方案:品牌备案后,上传产品报错5461,A+页面报错...
- MySQL自定义函数用法详解-复合结构自定义变量/流程控制
- layui select 默认选中
- 前端语音转文字实践总结
- 软件资源学生优惠合集
- 苹果cms设置本地播放器 ckplayer(版本:ckplayerx)
- python+cv2+pyzbar 二维码画框、角度
- 卸载程序时总是 显示“请等待当前程序完成卸载或更改”!
- 流放之路+连接服务器+未响应,流放之路链接服务器中就未响应
热门文章
- javaScript——内置函数1
- python图像下采样_[Python图像处理]十二.图像向下取样和向上取样
- 设计模式_3_建造者模式
- vb 根据pid获取句柄_C++中避免返回指向对象内部的句柄(handles)
- JavaScript高级之ES5 中的新增方法
- Java 关于类的专题
- LeetCode MySQL 1097. 游戏玩法分析 V
- LeetCode MySQL 619. 只出现一次的最大数字
- LeetCode 1049. 最后一块石头的重量 II(DP)
- LeetCode 1471. 数组中的 k 个最强值(排序)