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

饿了吗网站建设思路南阳网站建设制作价格

饿了吗网站建设思路,南阳网站建设制作价格,重庆网站建设招聘,如何注册电商网店一.前言 今天在力扣上刷到了一道题,想着和大家一起分享一下这道题——相交链表https://leetcode.cn/problems/intersection-of-two-linked-lists废话不多说,让我们开始今天的分享吧。 二.正文 1.1题目描述 是不是感觉好长,我也这么觉得。哈…

一.前言

今天在力扣上刷到了一道题,想着和大家一起分享一下这道题——相交链表https://leetcode.cn/problems/intersection-of-two-linked-lists废话不多说,让我们开始今天的分享吧。

二.正文

1.1题目描述

是不是感觉好长,我也这么觉得。哈哈,不过没办法,大家们凑合看一下吧,毕竟人家的题就那么长。

1.2题目分析

我想到有两种方法,一种是暴力求解,时间复杂度是O(N^2),还有一种是一种稍微巧妙一点的技巧,时间复杂度是(N)。

两种方法共同部分:

我们可以创建两个指针分别是指向headA和headB的 ,pcur1和pcur2。并让pcur1=headA

pcur2=pcurB。

我们首先需要判断该链表是不是相交链表,如果是,则返回相交链表的第一个相交节点。否则,返回NULL。那么如何判断该链表是不是相交链表呢?其实我们可以让pcur1和pcur2分别遍历两个链表的最后一个节点即可,如果pcur1=pcur2则说明两个链表至少有一个相交节点,毫无疑问这肯定是相交节点。反之,pcur1!=pcur2,则说明,不是相交链表。(值得注意的是,完成上面部分后,记得让pcur1=headA,pcur2=headB,因为pcur1和pcur2后续我们还需要重新遍历两个链表)

(i)暴力算法:

我们可以让headA中的每一个节点都与headB中的节点遍历一次,然后让headA的下一个节点,重复这个动作,直到headA的最后一个节点遍历结束。

这是该方法的代码:

/*** Definition for singly-linked list.* struct ListNode {*     int val;*     struct ListNode *next;* };*/
typedef struct ListNode ListNode;
struct ListNode *getIntersectionNode(struct ListNode *headA, struct ListNode *headB) 
{
ListNode* pcur1,*pcur2;
pcur1=headA;
pcur2=headB;
while(pcur1->next!=NULL)
{pcur1=pcur1->next;
}
while(pcur2->next!=NULL)
{pcur2=pcur2->next;
}
if(pcur2!=pcur1)
return NULL;
pcur1=headA;
pcur2=headB;
while(pcur1->next!=NULL)
{
while(pcur2->next!=NULL)
{
if(pcur1==pcur2)
return pcur1;
pcur2=pcur2->next;
}
pcur2=headB;
pcur1=pcur1->next;
}
return pcur1;
}

(ii)非暴力算法:

那么我们应该依据什么来遍历相对长度前的数据呢?我们可以利用在遍历A和B的同时,让代表A链表len1++来算出长度,同理len2是算出B的长度。定义一个变量gap=abs(len1-len2)算出绝对值,如果A链表长,则A链表先遍历gap个长度的节点,反之B链表长则,B链表先遍历gap个长度的节点。

最后的步骤是上图所示,相对长度中的上下节点依次比较。

三.结言

今天的题目分享就到此结束了,拜拜了,家人们。

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

相关文章:

  • 凡科如何开通网站建设wordpress极简杂志主题
  • 网站视频怎么做的好外贸 网站 seo
  • 中国建设银行美金账户登录网站做外贸网站需要注意些什么
  • 大型网站建设制作平台网站备案号 怎么写
  • 网站聊天怎么做域名是什么 有什么用
  • 落地页需要建网站吗免费做ppt网站
  • 西安网站建设价格基于PHP的家教网站开发环境
  • 代刷网站推广链接0元价格在线营销系统
  • 公司网站开发费账务处理国外房屋设计网站
  • 网站开发学习网站贵阳哪些公司建网站
  • 宁波cms建站淘宝运营培训视频
  • 如何建设手机网站首页风险报告查询系统
  • 免费资料库大全seo代运营公司
  • 农庄网站wordpress实现注册登陆
  • 个人网站开发用什么语言wordpress 密码查看
  • 网站开发文档 php网页开发语言有哪几种
  • 网站建设与管理办法wordpress下载整站源码
  • 方舟未来网站建设电商网站怎么做
  • 湖北阳新县建设局网站东莞网站策划
  • 太原模板建站软件做会所在哪个网站推广
  • 医疗网站建设目录wordpress调用内容
  • 网站改版有什么影响用vue开发好看的官网
  • jsp网站开发实例视频网站 公众号信息化建设工作
  • 毕业设计网站开发题目wordpress同步公众号
  • 怎么查看网站的友情链接自己做的网站链接
  • 做外贸铝材哪个网站比较好谷德设计网app下载
  • 芜湖龙湖建设工程有限公司网站网站服务器怎么做安全防护
  • 河池网站建设服务做电影资源网站服务器怎么选
  • 做网站线上线下价格混乱企业网站备案域名可以用个人的
  • 动易学校网站管理系统 漏洞广西南宁官方网站企业