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

西安网站建设公司php大气企业网站

西安网站建设公司,php大气企业网站,有什么做任务得佣金的网站,阳江58房产网题目描述: 给你两个单链表的头节点 headA 和 headB #xff0c;请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点#xff0c;返回 null 。 图示两个链表在节点 c1 开始相交#xff1a; 题目数据 保证 整个链式结构中不存在环。 注意#xff0c;函数返…题目描述: 给你两个单链表的头节点 headA 和 headB 请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点返回 null 。 图示两个链表在节点 c1 开始相交 题目数据 保证 整个链式结构中不存在环。 注意函数返回结果后链表必须 保持其原始结构 。 解题思路: 首先我们得明白,单链表只有一个next指针,如果两个单链表相交,那从相交结点开始,两链表完全相同,所以相交链表一定是Y字型的,不可能出现X型.,并且如果两链表最后一个结点不相同,则两链表一定不相交. 思路1:(暴力求解): 依次取第一个链表的一个结点与第二个链表的全部结点相比较(这里要注意比较的是结点的地址),若找到地址相同的结点,那么该结点就是相交结点,若遍历完第一个链表还没有找到,则表示两链表没有相交,其时间复杂度为O(n^2) 思路二: 如果相交链表是上如所示形状,那便可以取第一个链表的第一个结点与第二个链表的第一个结点比较,若不相同,继续比较两链表的第二个几点,直到找到相交结点.这样就可以把时间复杂度控制到O(n),这种方法虽然有效,但是碰到下图所示情况就没办法用了: 思考一下,如果两个链表相交的话,假设第一个链表在相交结点前有n个结点,第二个链表在相交结点前有m个结点,(假设nm),那么第一个链表的前n-m个结点肯定不是相交结点. 所以就可以分别遍历两个链表并求出其长度,让较长的链表先走两链表长度的差值步,使两链表相交结点前的结点数相同,这样就可以用上面讲的思路了. 这里有两个小细节: 在求两链表的长度时,遍历链表的条件为 while(cur-next ! NULL),这样遍历完成时cur指针指向的就是链表的最后一个结点,虽然这样写会导致求出来的链表长度少了1个结点,但是我们求两个链表的长度是为了知道其长度差,而两个链表长度都少1并不会影响结果由于我们并不知道两个链表谁长谁短,可以使用 if 语句判断,如果第一个链表长就让第一个链表先走,如果第二个链表长就让第二个链表先走,但是这样写会有很多代码重复.这种情况就可以使用假设法,定义一个longlist指针和一个shortlist指针,我们先让longlist指向第一个链表,short指向第二个链表,我们在判断第一个链表的长度是否大于第二个链表的长度,如果不是,则让longlist指向第二个链表,shortlst指向第一个链表,这样longlist一定指向的是长度较长的链表,short一定指向的是长度较短的链表,后续我们只要操作longlist和shortlist就好了 参考代码: struct ListNode *getIntersectionNode(struct ListNode *headA, struct ListNode *headB) {struct ListNode *curAheadA;struct ListNode *curBheadB;int lenA0;int lenB0;while(curA-next){lenA;curAcurA-next;}while(curB-next){lenB;curBcurB-next;}if(curA!curB)return NULL;//假设长的链表为Astruct ListNode *longlistheadA;struct ListNode *shortlistheadB;if(lenAlenB){longlistheadB;shortlistheadA;}int nabs(lenA-lenB);//先让长链表先走while(n--){longlistlonglist-next;}//两个链表同时走找相交结点while(longlist!shortlist){longlistlonglist-next;shortlistshortlist-next;}return longlist;//return shortlist; }
http://www.zqtcl.cn/news/494105/

相关文章:

  • 天河公司网站建设内蒙古建设厅安全资料网站
  • 学习网站的建设怎么做网站建设作业
  • 做公司产品展示网站企业网盘源码
  • 南通做网站企业初中生代表性设计制作作品图片
  • php框架做网站好处网站后台模板免费下载
  • 新兴县建设局网站建筑工程网络计划技术
  • 住房和城乡建设部网站北京网站建设设计规划
  • 哪个网站做logo设计师网络营销心得体会800字
  • 广州一起做的网站动态数据库网站
  • 网站程序预装深圳市住房和建设局陈斌
  • 网站建设历程wordpress国内主题排行
  • 公司网站建设及优化计划书找能做网站的
  • 网站建设方案模板下载南宁有名的网络公司
  • 本地做织梦网站做软件怎么赚钱
  • a站全称重庆大学网络教育平台
  • 美橙做过网站案例好文案网站
  • 鞍山商城网站建设国外代理ip
  • 东莞网站设计风格wordpress不能启动怎么解决
  • 社交网站制作临海建设局网站导航
  • 合肥需要做网站的公司佛山网站制作的公司
  • 哪里有做网站平台建设网站如何盈利
  • dw网站制作素材单人做网站需要掌握哪些知识
  • 网络推广产品公司做移动网站优化首
  • 网站建设dqcx广告网络用语
  • 烟台网站建设首推企汇互联见效付款手机网站宽度自适应
  • 网站建设小程序湖南wordpress插件刷不出来
  • 中国建设银行网站首页joy荣添创意网站建设
  • 市场营销网站网站开发技术项目说明书
  • 销售网站开发的背景wordpress虚线框可序列
  • 免费响应式网站深圳关键词优化