编写一个程序,找到两个单链表相交的起始节点。 例如,下面的两个链表: 在节点 c1 开始相交。 注意: 如果两个链表没有交点,返回 null. 在返回结果后,两个链表仍须保持原有的结构。 可假定整个链表结构中没有循环。 程序尽量满足 O(n) 时间复杂度,且仅用 O(1) 内存。 方法一: ...
分类:
其他好文 时间:
2018-09-08 13:04:16
阅读次数:
136
编写一个程序,找到两个单链表相交的起始节点。 例如,下面的两个链表: 在节点 c1 开始相交。 注意: 如果两个链表没有交点,返回 null. 在返回结果后,两个链表仍须保持原有的结构。 可假定整个链表结构中没有循环。 程序尽量满足 O(n) 时间复杂度,且仅用 O(1) 内存。 ...
分类:
其他好文 时间:
2018-08-17 00:44:23
阅读次数:
159
请实现一个函数,如果两个链表相交,请返回相交的第一个节点;如果不想交,返回null即可。 要求:如果链表1的长度为N,链表2的长度为M,时间复杂度请达到O(N+M),额外空间复杂度请达到O(1)。 输出: ...
分类:
其他好文 时间:
2018-08-03 14:18:34
阅读次数:
149
编写一个程序,找到两个单链表相交的起始节点。例如,下面的两个链表:A: a1 → a2 ↘ c1 → c2 → c3 ↗ B: b1 → b2 → b3在节点 c1 开始相交。注意: 如果两个链表没有交点,返回 null. 在返回结果后,两个链表仍须保持原有的结构。 可假定整个链表结构中没有循环。 ...
分类:
其他好文 时间:
2018-04-06 18:43:46
阅读次数:
187
单链表,可能有环,也可能无环。给定两个单链表的头节点head1 和 head2 这两个链表可能交也可能不交。实现函数,如果相交,请返回相交的第一个节点,不交返回null 这道题目需要分析的情况非常 本题拆分长三个子问题,每一个子问题都可以作为一道独立的算法题。 问题一、 如何判断有环 有则返回第一个 ...
分类:
编程语言 时间:
2017-09-10 21:40:00
阅读次数:
206
10.两个单链表相交,计算相交点 思路1: 分别遍历两个单链表,计算出它们的长度M和N,假设M比N大,则长度M的链表先前进M-N,然后两个链表同时以步长1前进,前进的同时比较当前的元素,如果相同,则必是交点。Node* getIntersectPoint(Node* Head1,Node* Head ...
分类:
其他好文 时间:
2016-09-30 07:47:13
阅读次数:
197
题目输入两个链表,找出它们的第一个公共结点。解题说明:
1.单链表
2.相交后不会分开,因为分开后一个结点有两个下一个结点就不是单链表了
两个链表呈YY形
如果两个链表两个指针向前走,相遇结点就是第一个公共结点,但是两个指针走的长度不一样
两个指针走了不同长度的YY上面的两个叉,如果求出两个指针分布应该走的两个叉的结点个数后,那么下一个结点就是他们第一个公共结点。
如果求出两个链表的长度...
分类:
其他好文 时间:
2016-06-24 15:26:08
阅读次数:
142
不考虑单链表有环的情况下 如果2个单链表相交,一定是Y型链表 1.遍历2个链表到尾结点,记录2个链表的长度x,y 2.尾结点相同,则相交。 3.从表头开始,长链表先走|x-y|步,之后2个链表一起走,判断第一个相同的点。 1 #include <stdio.h> 2 #include <stdlib ...
分类:
其他好文 时间:
2016-05-08 13:39:49
阅读次数:
227
思想:如果它们相交,则最后一个节点一定是共有的。ListNode*IsIntersect(ListNode*list1,ListNode*list2)
{
assert(list1&&list2);
ListNode*l1=list1;
ListNode*l2=list2;
intcout1=0;
intcout2=0;
while(l1->_next==NULL)
{
l1=l1->_next;
++cout1;
}
while..
分类:
其他好文 时间:
2016-03-30 07:10:18
阅读次数:
175
1、判断两个单链表是不是相交思路分析:最简单直接的方法就是依次遍历两条链表,判断其尾节点是不是相等,相等则相交否则不相交。boolCheckCross(constList&list1,constList&list2)//list1,list2为两个对象
{
Node*l1=list1._head;
Node*l2=list2._head;
while(l1-..
分类:
编程语言 时间:
2016-03-17 02:14:55
阅读次数:
292