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

不用服务器做网站线上编程课程

不用服务器做网站,线上编程课程,小程序设计流程,建程网招工信息目录 一、链表理论基础 二、链表相交求解思路 三、相关算法题目 四、疑点 一、链表理论基础 代码随想录 二、链表相交求解思路 链表相交时,是结点的位置,也就是指针相同,不是结点的数值相同; 思路:定义两个指针…

目录

一、链表理论基础

二、链表相交求解思路

三、相关算法题目

四、疑点


一、链表理论基础

代码随想录

二、链表相交求解思路

链表相交时,是结点的位置,也就是指针相同,不是结点的数值相同;

思路:定义两个指针currA和currB,分别指向链表A和链表B的头节点,求出两个链表的长度lenA和lenB;

如果lenB>lenA,交换currA和currB的指向,即让currA指向链表B,让currB指向链表A,同时交换lenA和lenB,让lenA保存较长的链表(链表B)的长度,lenB保存链表A的长度,就是currA和lenA是对应的,让其表示较长的链表;currB和lenB是对应的,让其表示较短的链表,但是不一定和headA和headB是对应的;

求出两个链表的长度差gap,然后让较长链表移动到 和较短链表 同长度的位置,此时,同时移动currA和currB 并进行比较,如果不相等,则依次往后移动,如果相等,则认为此处为链表相交的开始结点,返回该位置即可;否则返回null;

注意⚠️求完两个链表长度后,currA和currB此时指向为空,应该重新初始化;

三、相关算法题目

面试题目02.07. 链表相交

面试题 02.07. 链表相交 - 力扣(LeetCode)

public class Solution {public ListNode getIntersectionNode(ListNode headA, ListNode headB) {ListNode currA = headA;ListNode currB = headB;int lenA = 0;int lenB = 0;while(currA != null){//求链表A的长度lenA++;currA = currA.next;}while(currB != null){//求链表B的长度lenB++;currB = currB.next;}//★容易忘记 求完长度以后 currA和currB 指向为空 需要重新赋值头节点currA = headA;currB = headB;if(lenB > lenA){int temp = lenA;lenA = lenB;lenB = temp;currA = headB;currB = headA;//就是让currA 和 lenA 指向长度更长的那个链表 headA 还是 headB 无所谓}int gap = lenA - lenB;//求解两个链表长度之差while(gap != 0){gap--;currA = currA.next;//让更长的链表 移动到和较短链表同长度的位置 }while(currA != null){if(currA == currB){return currA;}currA = currA.next;currB = currB.next;}return null;}
}

四、疑点

1.最后相同位置判断链表A和链表B时,为什么只要有一个指针相同,后面的就不用判断了?(会不会 只有这一个相同,后面的又有不同的)

A:不会,当有一个指针的指向相同时,由于链表中指针域部分只有一个指针,所以之后必定也是一样的,链表相交以后就不会再分开成两个不同的链表;

2.法2同时移动链表的思路不太懂

3.让长链表移动到较短链表相同位置

4.本题思路

因为链表相交以后,说明两个链表共享同一个链表,那么相交部分的长度一定是≤ 俩链表中较短的链表,所以开始相交的部分最长也就是从较短链表的头结点开始,故本题思路 让长链表移动到和较短链表同长度的位置再开始比较;

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

相关文章:

  • 龙华做棋牌网站建设哪些网站是百度新闻源
  • 福永论坛网站建设网站建设预算申请
  • 网站怎么做图片超链接dw残联网站建设
  • wordpress 排行榜网站 主题百度官方营销推广平台官网
  • 南宁良庆网站建设如何建设一个查询系统网站
  • 怎么查网站关键词密度wordpress标题后缀
  • 重庆公司网站seo兰州做网站一咨询兰州做网站公司
  • 做家政网站公司简介网络公司是做什么
  • canvas做的手机网站国贸网站建设公司
  • 深圳html5网站开发多少钱网站建设服务有哪些方面
  • wordpress显示加载进度seo综合查询接口
  • 洛阳有哪些做网站的公司域名到期查询
  • 网站设计模式wordpress主题 线条
  • 网站建设的实训报告的实训感受网站建设的域名是什么
  • 怎么做移动端网站阿里云服务器做盗版视频网站
  • 网站怎么做直播不写编程可以做网站建设
  • 上海微网站制作设计制作wordpress 签到 排行
  • 网站建设单位有哪些代理公司注册机构
  • 沈阳网站建广州建设工程交易中心 吴林爽
  • 重庆制作网站速成班游戏推广引流
  • No酒店网站建设安卓软件开发软件
  • 网站要什么凉山州建设厅官方网站
  • 我和宠物做朋友教案小精灵网站网站建设 租赁
  • 上海赶集网站建设商丘网络电视台直播
  • 清远网站建设推广东莞道滘网站建设
  • 网站建设人群定位站长工具无忧
  • 做虚拟网站要花多少钱百度推广工作好干吗
  • 广州h5网站制作公司网站内容优化方法
  • 自动刷网站关键字排行画流程图的网站
  • 网站建设所需的软件网络服务机构