2 u011172887 u011172887 于 2013.09.28 14:25 提问

数据结构中用C++怎么把两个链表合成一个链表,一下是一对代码,请问主函数怎么写

求代码!#include
template
struct Node
{
DataType data;
Node*next;
};
template
class Linklist
{
public:
Linklist(DataType a[],int n);
~Linklist();
int Length();
DataType Get(int i);
int Locate(DataType x);
void Insert(int i,DataType x);
DataType Delete(int i);
void PrintList();
private:
Node*first;
};
template
Linklist::Linklist(DataType a[],int n)
{
first=new Node;first->next=NULL;
for(i=0;i {
s=new Node;s->data=a[i];
s->next=first->next;first->next=s;
}
}
template
Linklist::~Linklist()
{
while(first!=NULL)
{
q=first;
first=first->next;
delete q;
}
}
template
int Linklist::Length()
{
Node*first;
p=first->next;count=0;
while(p!=NULL)
{
p=p->next;
count++;
}
return count;
}
template
DataType Linklist::Get(int i)
{
Node*first;
p=first->next;count=1;
while(p!=NULL&&count {
p=p->next;
count++;
}
if(p==NULL)throw"位置";
else return p->data;
}
template
int Linklist::Locate(DataType x)
{
p=first->next;count=1;
while(p!=NULL)
{
if(p->data==x)return count;
p=p->next;
count++;
}
return 0;
}
template
void Linklist::Insert(int i,DataType x)
{
p=first;count=0;
while(p!=NULL&&count {
p=p->next;
count++;
}
if(p==NULL)throw"位置";
else{
s=new Node;s->data=x;
s->next=p->next;p->next=s;
}
}
template
void Linklist::PrintList()
{

p=first->next;
while(p!=NULL)
{
    cout<<p->data;
    p=p->next;
}

}
void main()
{
int i,L1[6];
for(i=0;i<=5;i++)
{
cin>>L1[i];
}
LinklistL1(a,6);

}

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!