#include
using namespace std;
class LinkNode
{
int data;
LinkNode *link;
LinkNode(int d=0,LinkNode *l=0){data=d;link=l;}
};
class List
{
private:
LinkNode *first;
int n;
public:
List()
{
first=new LinkNode;
first->link=0;
first->data=0;
}
~List()
{
LinkNode *p;
p=first;
while(p)
{
first=p->link;
delete p;
p=first;
}
}
void Create()
{
LinkNode *p,*last;
int n,x;
p=first->link;
cout<<"输入元素个数:"<<endl;
cin>>n;
for(int i=0;i<n;i++)
{
cout<<"输入第"<<i<<"个元素值"<<endl;
cin>>x;
last=new LinkNode(x);
p->link=last;
p=last;
}
last->link=first;
}
void Search()
{
LinkNode *p,*last,*q;
int i;
p=first->link;
last=p->link;
for(i=0;i<=n;i++)
{
if(p->data>=last->data)
{
q=last->data;
p=last->link;
last=p->link;
}
else
{
q=p->data;
p=last->link;
last=p->link;
}
}
cout<<"链表中的最小值:"<<p->data<<endl;
}
};
void main()
{
List t;
t.Create();
t.Search();
}