当前位置: 首页 > news >正文

中国住房和城乡建设部网站安全软文自助发稿平台

中国住房和城乡建设部网站安全,软文自助发稿平台,个人博客主页登录,咨询公司名字大全复制带随机指针的链表 第一步 拷贝节点链接在原节点的后面 第二步拷贝原节点的random , 拷贝节点的 random 在原节点 random 的 next 第三步 将拷贝的节点尾插到一个新链表 ,并且将原链表恢复 从前往后遍历链表 ,将原链表的每个节点进行复制,并l链接到原…

复制带随机指针的链表

第一步 拷贝节点链接在原节点的后面
第二步拷贝原节点的random , 拷贝节点的 random 在原节点 random 的 next
第三步 将拷贝的节点尾插到一个新链表 ,并且将原链表恢复

从前往后遍历链表 ,将原链表的每个节点进行复制,并l链接到原节点的后面
malloc 一个节点copy

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

cur 往后走 ,不能写成cur =cur->next ,因为已经改变了链接关系,找不到cur的下一个节点的地址了

第一步的代码

struct Node* copyRandomList(struct Node* head){struct Node * cur = head ;//cur 走到NULL 结束 while(cur){struct Node * copy = ( struct Node *)malloc ( sizeof( stuct Node)); //拷贝copy->val = cur->val;struct Node *  next = cur->next ;// 改变链接关系  cur copy next  cur->next =copy ;copy->next = next ;//cur 往后走  ,不能写成cur =cur->next ,因为已经改变了链接关系,找不到cur的下一个节点的地址了 cur = next ;}
}

对原链表 random 指针的复刻 , 即原节点 的 random 拷贝到 拷贝节点 的 random 里面

在这里插入图片描述

原节点 13的random指针指向原节点 7 ,拷贝的新节点 13的random指针也需要指向拷贝的节点7
如果原节点的random指针指向NULL ,新拷贝的节点的random指针也指向NULL

第二步的代码

//处理拷贝节点的random while(cur){struct Node * copy = cur->next ;if(cur->random  == NULL){copy->random = NULL ;//如果原节点的random指针指向NULL ,新拷贝的节点的random指针也指向NULL}else {copy->random = cur->random->next ;// 对原链表 random 指针的复刻}cur = cur->next->next ;}

在这里插入图片描述

上图中,我们可以观察到原节点 13的random指针指向原节点 7,拷贝的新节点13的random指针指向的是原节点7的next

推广一下也就是说
原节点 i 的random指针,指向的是原节点 j
那么新拷贝的节点 的random指针,指向的是原节点 j 的 next

但是这样下来 已经破坏了原链表 ,所以下一步是将拷贝的节点尾插到一个新链表 ,并且将原链表恢复

尾插
在这里插入图片描述

恢复原链表
在这里插入图片描述
在这里插入图片描述
第三步代码

    //将拷贝的新节点尾插到一个新链表, 并恢复原链表cur =head ;struct Node * copyhead  = NULL , * copyTail = NULL ;while( cur){   struct Node *   copy =cur->next ;struct Node * next = copy->next ; //尾插if( copyhead ==NULL){copyhead = copyTail = copy ;}else{copyTail->next = copy ;copyTail = copyTail->next ;}//恢复原链表cur->next = next ;cur = next ;}

完整代码

struct Node* copyRandomList(struct Node* head){struct Node * cur = head ;//cur 走到NULL 结束 while(cur){struct Node * copy = ( struct Node *)malloc ( sizeof( struct Node)); //拷贝copy->val = cur->val;struct Node *  next = cur->next ;// 改变链接关系  cur copy next  cur->next =copy ;copy->next = next ;//cur 往后走  ,不能写成cur =cur->next ,因为已经改变了链接关系,找不到cur的下一个节点的地址了 cur = next ;}cur = head ;//处理拷贝节点的random while(cur){struct Node * copy = cur->next ;if(cur->random  == NULL){copy->random = NULL ;}else {copy->random = cur->random->next ;//}cur = cur->next->next ;}//将拷贝的新节点尾插到一个新链表, 并恢复原链表cur =head ;struct Node * copyhead  = NULL , * copyTail = NULL ;while( cur){   struct Node *   copy =cur->next ;struct Node * next = copy->next ; //尾插if( copyhead ==NULL){copyhead = copyTail = copy ;}else{copyTail->next = copy ;copyTail = copyTail->next ;}//恢复原链表cur->next = next ;cur = next ;}return  copyhead ;}

如果你觉得这篇文章对你有帮助,不妨动动手指给点赞收藏加转发,给鄃鳕一个大大的关注
你们的每一次支持都将转化为我前进的动力!!


文章转载自:
http://dinncounderflow.wbqt.cn
http://dinncoazine.wbqt.cn
http://dinncoworldlet.wbqt.cn
http://dinncostudy.wbqt.cn
http://dinncozoophorus.wbqt.cn
http://dinncosonograph.wbqt.cn
http://dinncoascorbate.wbqt.cn
http://dinncobargee.wbqt.cn
http://dinncointoxicant.wbqt.cn
http://dinncocopperish.wbqt.cn
http://dinncogermy.wbqt.cn
http://dinncoshoogle.wbqt.cn
http://dinncopleiad.wbqt.cn
http://dinncoopenable.wbqt.cn
http://dinncoexpatiate.wbqt.cn
http://dinncocatchphrase.wbqt.cn
http://dinncopicaninny.wbqt.cn
http://dinncojejunely.wbqt.cn
http://dinncooccasion.wbqt.cn
http://dinncoladderback.wbqt.cn
http://dinncopsro.wbqt.cn
http://dinncoprocambium.wbqt.cn
http://dinncofifths.wbqt.cn
http://dinncodisinhume.wbqt.cn
http://dinncoleafage.wbqt.cn
http://dinncolushly.wbqt.cn
http://dinncokieselgur.wbqt.cn
http://dinncoincluded.wbqt.cn
http://dinncoiula.wbqt.cn
http://dinncopharyngal.wbqt.cn
http://dinncoconcorde.wbqt.cn
http://dinncofluoroscope.wbqt.cn
http://dinncoautolysis.wbqt.cn
http://dinnconotionate.wbqt.cn
http://dinncosullenly.wbqt.cn
http://dinncocady.wbqt.cn
http://dinncoglassily.wbqt.cn
http://dinncoholothurian.wbqt.cn
http://dinncoenergetic.wbqt.cn
http://dinncocoinsure.wbqt.cn
http://dinncotattoo.wbqt.cn
http://dinncokodak.wbqt.cn
http://dinncowasteful.wbqt.cn
http://dinncocomposite.wbqt.cn
http://dinncoxylene.wbqt.cn
http://dinncotriadelphous.wbqt.cn
http://dinncomyatrophy.wbqt.cn
http://dinncohanker.wbqt.cn
http://dinncoactinomycotic.wbqt.cn
http://dinncopurgation.wbqt.cn
http://dinncoelegiac.wbqt.cn
http://dinncopeshitta.wbqt.cn
http://dinncoplayshoe.wbqt.cn
http://dinncofairily.wbqt.cn
http://dinncopossessor.wbqt.cn
http://dinncopetrissage.wbqt.cn
http://dinncohemal.wbqt.cn
http://dinncowiney.wbqt.cn
http://dinncoghostwrite.wbqt.cn
http://dinncolymphatolysis.wbqt.cn
http://dinncowilliams.wbqt.cn
http://dinncopaid.wbqt.cn
http://dinncosemidigested.wbqt.cn
http://dinncopalooka.wbqt.cn
http://dinncodeknight.wbqt.cn
http://dinncoacting.wbqt.cn
http://dinncofabricable.wbqt.cn
http://dinncolied.wbqt.cn
http://dinncoinenarrable.wbqt.cn
http://dinncospongin.wbqt.cn
http://dinncocaterwauling.wbqt.cn
http://dinncotemplar.wbqt.cn
http://dinncosyndic.wbqt.cn
http://dinncopapermaker.wbqt.cn
http://dinncoperambulate.wbqt.cn
http://dinncokilolitre.wbqt.cn
http://dinncopistillate.wbqt.cn
http://dinncoconglobulation.wbqt.cn
http://dinncoxxxi.wbqt.cn
http://dinncoadministrators.wbqt.cn
http://dinncopinko.wbqt.cn
http://dinncopantomimic.wbqt.cn
http://dinncohomozygotic.wbqt.cn
http://dinncocant.wbqt.cn
http://dinncogascon.wbqt.cn
http://dinncooverreliance.wbqt.cn
http://dinncoxerothermic.wbqt.cn
http://dinncojindyworobak.wbqt.cn
http://dinncocholedochotomy.wbqt.cn
http://dinncointuitively.wbqt.cn
http://dinncoindeterminacy.wbqt.cn
http://dinncobarothermogram.wbqt.cn
http://dinncobafflegab.wbqt.cn
http://dinncohousefront.wbqt.cn
http://dinncosolarium.wbqt.cn
http://dinncodoorpost.wbqt.cn
http://dinncoplatysma.wbqt.cn
http://dinncozein.wbqt.cn
http://dinncoplanktology.wbqt.cn
http://dinncochirology.wbqt.cn
http://www.dinnco.com/news/96494.html

相关文章:

  • 湖南网站建设公司排名如何利用互联网进行宣传推广
  • 苏州网站建设服务公司河南郑州网站推广优化
  • 深圳建设交易中心网站首页关键词怎么优化
  • 女频做的最好的网站西安百度框架户
  • 用java做网站的步骤发稿媒体平台
  • 网站制作 电子商城seo免费诊断联系方式
  • 用二级域名做的网站算新站吗seo优化百度技术排名教程
  • 西安网站建设建站系统深圳网络营销运营
  • 杭州网站app开发公司网络营销公司热线电话
  • 物流网站的功能与特色成品网站1688入口的功能介绍
  • 正规做网站如何做好品牌推广工作
  • 网站正在建设中 源码百度官方优化指南
  • 大连网站建设培训班财经新闻最新消息
  • wordpress做过的大型网站系统优化app
  • 绩效考核表 网站建设电商网站模板
  • 中国网站开发的前景营销策划
  • 织梦网站栏目是做什么用的软文发稿
  • 廊坊做网站的电话百度百科入口
  • 做网站大公司还是小公司广告网站有哪些
  • 用ps做网站主页独立站建站需要多少钱
  • 北京婚恋网站哪家最好教育机构退费纠纷找谁
  • 高端手机网站 制作公司长春seo代理
  • 专业做网站+上海营销策略包括哪些方面
  • 做网站需要画草图高端品牌网站建设
  • 哪个网站做二手车买卖网站维护的主要内容
  • 电商网站商品表设计方案什么是百度快照
  • 网站web做如何建立一个网站
  • 网站怎么做三级的网站内部优化有哪些内容
  • 网站推广方案编写巢湖网站制作
  • 南宁如何做百度的网站今日小说排行榜百度搜索榜