链表相交需要判断有无循环,无循环直接找最后一个节点进行比较,有循环找某个循环点然后看看另一条是否也有这个点。找循环链表入口比较牛逼:在p2和p1第一次相遇的时候,假定p1走了n步,环路的入口是在h步的时候经过的,那么有 p1走的路径: h+c = n; c为p1和p2相交点,距离环路入口的距离 p2...
分类:
其他好文 时间:
2014-10-14 19:24:59
阅读次数:
130
判断俩个链表是否相交给出俩个单向链表的头指针,比如h1,h2,判断这俩个链表是否相交。为了简化问题,我们假设俩个链表均不带环。问题扩展:1.如果链表可能有环列?2.如果需要求出俩个链表相交的第一个节点列?ANSWER:struct Node { int data; int Node *next;};...
分类:
其他好文 时间:
2014-09-16 20:34:30
阅读次数:
172
问题一:(引用编程之美)如果两个链表相交,则尾节点一定是公共的问题二: 1 int listLength(node* list){ 2 int length=0; 3 while(list!=NULL){ 4 length++; 5 list=list...
分类:
其他好文 时间:
2014-09-16 15:46:40
阅读次数:
169
第 7 题(链表)微软亚院之编程判断俩个链表是否相交给出俩个单向链表的头指针,比如 h1,h2,判断这俩个链表是否相交。为了简化问题,我们假设俩个链表均不带环。问题扩展:1.如果链表可能有环列?2.如果需要求出俩个链表相交的第一个节点列?看到这个题目我很困惑。如果链表的结构是下面这个样子typede...
分类:
其他好文 时间:
2014-08-10 12:45:20
阅读次数:
258
问题:有一个单链表,其中可能有一个环,也就是某个节点的next指向的是链表中在它之前的节点,这样在链表的尾部形成一环。1、如何判断一个链表是不是这类链表?问题扩展:1.如果链表可能有环呢?2.如果需要求出两个链表相交的第一个节点呢?分析:在无环的情况下,如果两个链表有结点相同,那么它们下一结点也相同...
分类:
其他好文 时间:
2014-08-01 15:21:41
阅读次数:
183