// 0408b.cpp
//环链表
#include "stdafx.h"
struct Node
{
int data;
Node *pNext;
};
bool IsRing(Node *pHead)//判断是否是环链表
{
Node *pFlow,*pFast;
pFlow=pFast=pHead;
while(pFast&&pFast->pNext)
{
pFlow = pFlow->pNext;
pFast = pFast->pNext->pNext;
if(pFlow==pFast)
return true;
}
return false;
}
int main(int argc, char* argv[])
{
Node n1,n2,n3,n4;
n1.data=1;
n1.pNext=&n2;
n2.data=2;
n2.pNext=&n3;
n3.data=3;
n3.pNext=&n4;
n4.data=4;
n4.pNext=&n1;
bool n=IsRing(&n1);
return 0;
}