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

力扣面试题02.07-链表相交

链表相交

题目链接

解题思路:

  1. 题目可以确定如果相交,那么相交的部分一定是在链表的结尾部分
  2. 第一步求得两条链表的长度
  3. 第二步长度做差,将长的那条链表与短的那条链表后部分对其
  4. 第三步遍历后面的部分,如果当前节点相等,直接返回,否则返回null
/*** Definition for singly-linked list.* struct ListNode {*     int val;*     ListNode *next;*     ListNode(int x) : val(x), next(NULL) {}* };*/
class Solution {
public:ListNode* getIntersectionNode(ListNode* headA, ListNode* headB) {int lenA=0;int lenB=0;ListNode* curA = headA;ListNode* curB = headB;while (curA != NULL) {lenA++;curA = curA->next;}while (curB != NULL) {lenB++;curB = curB->next;}curA = headA;curB = headB;if (lenA > lenB) {int temp = lenA - lenB;while (temp--) {curA = curA->next;}while (curA != NULL) {if (curA == curB) {return curA;}curA = curA->next;curB = curB->next;}}else{int temp = lenB - lenA;while (temp--) {curB = curB->next;}while (curB != NULL) {if (curA == curB) {return curA;}curA = curA->next;curB = curB->next;}}return NULL;}
};
http://www.lryc.cn/news/290085.html

相关文章:

  • Java集合-ArrayList
  • 数据结构·单链表经典例题
  • Linux常用指令的整合
  • 阿里云centos安装mysql,并修改初始密码
  • 【JavaScript基础入门】04 JavaScript基础语法(二)
  • 标准库中的string类(下)——“C++”
  • 如何使用Docker部署火狐浏览器并实现无公网ip远程访问
  • 瑞_数据结构与算法_AVL树
  • BGP同步规则
  • Linux命令-apt-key命令(管理Debian Linux系统中的软件包密钥)
  • Python根据Excel表进行文件重命名
  • 【UVM源码】UVM Config_db机制使用总结与源码解析
  • 群辉开启WebDav服务+cpolar内网穿透实现移动端ES文件浏览器远程访问本地NAS文件
  • 通过mybatis拦截器给sql执行加一个耗时监控
  • 构建知识图谱:从技术到实战的完整指南
  • STM32的分类和选型
  • python使用read_sql与to_sql读写数据库
  • 【ArcGIS微课1000例】0096:dem三维块状表达(层次地形模型)
  • OJ_糖果分享游戏
  • sqli-lbs靶场搭建
  • SharedPreferences卡顿分析
  • 64、ubuntu使用c++/python调用alliedvisio工业相机
  • 网络端口与 IP 地址有什么区别?
  • C语言标准的输入输出
  • C++ 类与对象(上)
  • 如何配置MacLinuxWindows环境变量
  • 【Linux】从C语言文件操作 到Linux文件IO | 文件系统调用
  • mask transformer相关论文阅读
  • springboot+vue3支付宝接口案例-第二节-准备后端数据接口
  • 贪吃蛇游戏设计文档(基于C语言)