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

中国招标网官方网站渠道网

中国招标网官方网站,渠道网,编程基础知识大全,美国做汽车配件的网站文章目录 前言一、链表分割二、环形链表I三、环形链表II四、链表的回文结构五、随机链表的复制 前言 一、链表分割 牛客网CM11:链表分割- - -点击此处传送 题解: 思路图: 代码: 二、环形链表I 力扣141:环形链表…

文章目录

  • 前言
  • 一、链表分割
  • 二、环形链表I
  • 三、环形链表II
  • 四、链表的回文结构
  • 五、随机链表的复制


前言

一、链表分割

牛客网CM11:链表分割- - -点击此处传送
在这里插入图片描述
题解:
思路图:
在这里插入图片描述
代码:
在这里插入图片描述

二、环形链表I

力扣141:环形链表- - -点击此处传送
在这里插入图片描述
思路图:
在这里插入图片描述
扩展问题:
在这里插入图片描述

代码:

bool hasCycle(struct ListNode *head) {struct ListNode*fast=head,*slow=head;while(fast && fast->next){//slow走一步slow=slow->next;//fast走两步fast=fast->next->next;//若相等(相遇)则有环,返回true并退出程序if(fast==slow){return true;}}//否则无环return false;
}

三、环形链表II

力扣142:环形链表II- - -点击此处传送
在这里插入图片描述
题解:
思路图:
在这里插入图片描述
代码:

struct ListNode *detectCycle(struct ListNode *head) {struct ListNode*fast=head;struct ListNode*slow=head;while(fast && fast->next){slow=slow->next;fast=fast->next->next;if(fast==slow){struct ListNode*meet=slow;while(head != meet){head=head->next;meet=meet->next;}return meet;}}return NULL;
}

四、链表的回文结构

牛客网OR36:链表的回文结构- - -点击此处传送
在这里插入图片描述
思路图:
在这里插入图片描述

代码:

struct ListNode*reverseList(struct ListNode*head){struct ListNode*cur=head;struct ListNode*newhead=NULL;while(cur){struct ListNode*next=cur->next;cur->next=newhead;newhead=cur;cur=next;}return newhead;}struct ListNode*middleNode(struct ListNode*head){struct ListNode*slow=head;struct ListNode*fast=head;while(fast && fast->next){slow=slow->next;fast=fast->next->next;}return slow;}bool chkPalindrome(ListNode* head) {struct ListNode*mid=middleNode(head);struct ListNode*rhead=reverseList(mid);while(head && rhead){if(head->val != rhead->val)return false;head=head->next;rhead=rhead->next;}return true;}

五、随机链表的复制

力扣138:随机链表的复制- - -点击此处传送
在这里插入图片描述
思路图:
在这里插入图片描述
代码:

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=copy->next;} cur=head;while(cur){struct Node*copy=cur->next;if(cur->random==NULL){copy->random=NULL;}else{copy->random=cur->random->next;}cur=copy->next;}cur=head;struct Node*newhead=NULL;struct Node*tail=NULL;while(cur){struct Node*copy=cur->next;struct Node*next=copy->next;if(tail==NULL){newhead=tail=copy;}else{tail->next=copy;tail=tail->next;}cur->next=next;cur=next;}return newhead;
}
http://www.ds6.com.cn/news/82748.html

相关文章:

  • 科丰化工东莞网站建设网站权重怎么提高
  • 网站的后端用什么软件做seo高手是怎样炼成的
  • 低功耗集成主板做网站外链网站大全
  • 制作网站项目实例成都seo网络优化公司
  • 美国最新军事消息seo技术快速网站排名
  • php网站留言板怎么做市场营销渠道
  • 万网是干什么用的长沙网站推广排名优化
  • 贵阳设计网站百度推广没有一点效果
  • 河南网络科技网站建设百度信息流广告平台
  • 嘉峪关做网站比较好网站制作公司
  • 做网站怎么兼容所有浏览器网页模板建站系统
  • 网站添加新闻开封网站快速排名优化
  • 杭州网站建设工作室品牌维护
  • 做网站坂田百度新闻网
  • 广州物流网站建设上海最近3天疫情情况
  • 经典重庆区县论坛信息流优化师证书
  • 公司网站空间域名建设上海seo推广外包
  • 深圳网站建设公司设计公司企业营销策划方案范文
  • 上海著名网站设计公司搜索引擎排名
  • 电商网站开发教学视频肥城市区seo关键词排名
  • 邯郸网站设计培训收录排名好的发帖网站
  • 建设网站群的指导思想seo优化网站教程
  • 新余服装网站建设seo页面代码优化
  • 网站页眉设计百度热搜seo
  • 做网站的流程图点击软件
  • 发布工程信息的网站有哪些百度seo插件
  • 优酷如何做收费视频网站seo网站推广杭州
  • 做网站静态和动态志鸿优化设计答案网
  • WordPress登录日志插件安卓手机优化软件哪个好
  • 做商城网站公司吗seo在线培训课程