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

网站在浏览器的图标怎么做昆明网页设计培训学校

网站在浏览器的图标怎么做,昆明网页设计培训学校,经常访问的网站来打不开,教学方面网站建设一、题目: 138. 随机链表的复制 - 力扣(LeetCode) 函数原型: struct Node* copyRandomList(struct Node* head) 二、思路 本题是给出一个单链表,单链表的每个结点还额外有一个随机指针,随机指向其他结点&am…

一、题目:

138. 随机链表的复制 - 力扣(LeetCode)

 

函数原型:

struct Node* copyRandomList(struct Node* head)

二、思路

本题是给出一个单链表,单链表的每个结点还额外有一个随机指针,随机指向其他结点,要求复制该链表。

常规情况下复制链表,只需要遍历原链表,新建和原链表相同的结点尾插到新链表即可。

但是该链表有一个随机指针,还需要找到原链表中各个结点随机指针的指向,让新链表中结点的随机指针也指向新链表中的与原链表中相同位置的结点。因此还要在新链表中找到原链表中各个结点随机指针指向的结点,算法为O(N^2),且判断是否为随机指针指向的结点只能通过结点值判断,如果链表中有多个值相同的结点,九不便于判断是否为随机指针指向的结点。

 

上述方法不易实现,此处提供一个全新的思路:

由于新建一个链表每个结点的随机指针不好复制,那么就在原链表上复制每个结点,然后再复制每个结点的随机指针。

先在原链表每个结点后复制一个相同的结点,复制完成后,再次遍历链表,就可以通过当前结点随机指针指向结点的下一个结点找到复制结点随机指针需要指向的结点。最后将每个复制的结点从原链表中拆下来,重新链接组成新的链表即可完成链表的复制。

三、代码

/*** Definition for a Node.* struct Node {*     int val;*     struct Node *next;*     struct Node *random;* };*/struct Node* copyRandomList(struct Node* head) {struct Node*cur=head;while(cur)//在原链表每个结点后复制一个相同的结点{struct Node* copy=(struct Node*)malloc(sizeof(struct Node));copy->val=cur->val;copy->next=cur->next;cur->next=copy;cur=cur->next->next;}cur=head;while(cur){//复制结点的随机指针指向的结点就是当前结点随机指针指向结点的下一结点if(cur->random)cur->next->random=cur->random->next;elsecur->next->random=NULL;cur=cur->next->next;}cur=head;struct Node* newhead=NULL;struct Node *tail=NULL;while(cur)//拆下复制的结点并恢复原链表,重新链接这些结点{struct Node* next=cur->next;cur->next=next->next;if(tail==NULL){newhead=tail=next;}else{tail->next=next;tail=next;}cur=cur->next;}return newhead;}

http://www.yayakq.cn/news/928437/

相关文章:

  • 镇江市住房城乡建设局网站asp.net网站开发与应用
  • 网站开发需要用到哪些软件模板网站的域名是什么意思
  • 聊城哪有做网站的软文推广渠道
  • 长沙制作网站访问数据库的网站开发语言
  • 网站管理系统安装新的网站设计公司
  • 可以在几个 网站备案学习网站开发体会与感想
  • 高端网站建设四川大型车网站建设
  • 欧美在线做视频网站logo网站
  • 网站架构计划书四川建设学习网
  • 网站备案中是什么意思运城手机网站制作
  • 网站开发价格对比网络架构接单
  • php建站软件农林网站建设
  • 网站建设分工案例北京搜索引擎推广公司
  • 网站设计深圳大专软件技术工资一般多少
  • 郑州做企业网站的济南本地网站
  • 做网站需要会什么网站系统应怎么做会计分录
  • 做网站的IT行业网站平台建设合同模版
  • 石家庄定制建站wordpress显示用户称谓
  • 安康做网站公司廊坊代运营公司
  • 高臣网站建设公司会计培训机构排名前十
  • 做直播网站找哪个个人引擎网站什么做
  • 网上二手书网站开发中的问题和展望wordpress网站调用导航菜单
  • 广州旅游网站建设网店美工需要学什么软件
  • 建设银行科技中心网站怎么制作网站链接手机
  • 响应式网站图解不被看出wordpress开发
  • 企业网站建设的公司价格网站做游客留言做
  • 网站换域名了怎么办seo建站基础:wordpress安装教程图解 - 天缘博客
  • 网站的层次查看网站源代码建站可以
  • 东莞网站建设lhznkj本周国内新闻
  • 专门做微信公众号的网站凡科网邮箱登陆