博客
关于我
王道数据结构2.2.3——8、找处两个单链表的公共结点
阅读量:634 次
发布时间:2019-03-14

本文共 543 字,大约阅读时间需要 1 分钟。

思路

注意,两个单链表有公共结点意味着,只要有一个公共结点,那么后继的所有结点都是完全一样的。因此,两个单链表相当于“Y”的形状。由于两个链表长度不一定相等,所以算出长度差d之后,用较长的单链表遍历到第d个位置,然后两个表开始一起遍历,直到两个指针所指元素是同一个,也就是第一个公共结点,后面的所有结点都是公共结点。

代码

LinkList pub_node(LinkList L, LinkList Q){    int L_len=0,Q_len=0;    LNode *p=L->next,*q=Q->next;    while(p!=NULL){ //L的长度        p=p->next;L_len++;    }    while(q!=NULL){ //Q的长度        q=q->next;Q_len++;    }    //长度差值    if(L_len>Q_len){        while(L_len-Q_len--)  p=p->next;    }else if(L_len
next; } while(p!=q){ p=p->next;q=q->next; } return p;}

 

转载地址:http://vpaoz.baihongyu.com/

你可能感兴趣的文章
mysql中出现Unit mysql.service could not be found 的解决方法
查看>>
mysql中出现update-alternatives: 错误: 候选项路径 /etc/mysql/mysql.cnf 不存在 dpkg: 处理软件包 mysql-server-8.0的解决方法(全)
查看>>
Mysql中各类锁的机制图文详细解析(全)
查看>>
MySQL中地理位置数据扩展geometry的使用心得
查看>>
Mysql中存储引擎简介、修改、查询、选择
查看>>
Mysql中存储过程、存储函数、自定义函数、变量、流程控制语句、光标/游标、定义条件和处理程序的使用示例
查看>>
mysql中实现rownum,对结果进行排序
查看>>
mysql中对于数据库的基本操作
查看>>
Mysql中常用函数的使用示例
查看>>
MySql中怎样使用case-when实现判断查询结果返回
查看>>
Mysql中怎样使用update更新某列的数据减去指定值
查看>>
Mysql中怎样设置指定ip远程访问连接
查看>>
mysql中数据表的基本操作很难嘛,由这个实验来带你从头走一遍
查看>>
Mysql中文乱码问题完美解决方案
查看>>
mysql中的 +号 和 CONCAT(str1,str2,...)
查看>>
Mysql中的 IFNULL 函数的详解
查看>>
mysql中的collate关键字是什么意思?
查看>>
MySql中的concat()相关函数
查看>>
mysql中的concat函数,concat_ws函数,concat_group函数之间的区别
查看>>
MySQL中的count函数
查看>>