一、结构体定义
typedef int DataType;
typedef struct ListNode//定义结点
{
DataType data;
struct ListNode* next;
}ListNode,*PListNode;
typedef struct PList//定义一个成员是指向结点的指针的结构体
{
PListNode PHead;
}PList,*PList;
二、题目分析
两个链表相交有以下几种情况:
三、函数实现(判断两个都不带环的链表是否相交)
//12.判断两个都不带环的链表是否相交;
int CheckCross(PListNode PHead1,PListNode PHead2)
{
PListNode cur1=PHead1;
PListNode cur2=PHead2;
if (cur1==NULL||cur2==NULL)
return 0;
while (cur1->next)
{
cur1=cur1->next;
}
while (cur2->next)
{
cur2=cur2->next;
}
if (cur1==cur2)
return 1;
else
return 0;
}