数据结构单链表输入输出(c++)
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
if(i==-1)
return head;
link<T> *p=new link<T>(head->next);
while( p!=NULL && count<i)
{
p=p->next;
count++;
}
return p;
}
template<class T>
bool inklist<T>::insert(const int i,const T value)
{
cout<<p->date<<" ";
p=p->next;
}
cout << endl;
}
void main()
{
inklist<int> b;
int i,a[10];
for(i=0;i<5;i++)
{
cin>>a[i];
b.append(a[i]);
}
b.print();
}
{
next=nextvalue;
}
};
template<class T>class inklist{
private:
link<T> *head,*tail;
link<T> *setpos(const int p);
public:
inklist();
~inklist();
bool append(const T value);
deleteቤተ መጻሕፍቲ ባይዱq;
}
else
{
p->next=q->next;
delete q;
}
return true;
}
template<class T>
bool inklist<T>::append(const T value)
{
if(tail==NULL){
head->next=tail=new link<T>(value,NULL);
#include<iostream.h>
template<class T>
class link
{
public:
T date;
link<T> *next;
link(const T info, link<T> *nextvalue=NULL)
{
date=info;
next=nextvalue;
}
link(link<T> *nextvalue)
bool insert(const int p,const T value);
bool remove(const int p);
void print();
};
template<class T>
inklist<T>::inklist()
{
head=tail=new link<T>(NULL);
}
template<class T>
return true;}
else{
tail->next=new link<T>(value,NULL);
tail=tail->next;
return true;
}
}
template<class T>
void inklist<T>::print()
{
link<T>*p;
p=head->next;
while(p!=NULL)
bool inklist<T>::remove(const int i)
{
link<T> *p,*q;
if((p=setpos(i-1))==NULL||p==tail)
{
cout<<"非法删除点";
return false;
}
q=p->next;
if(q==tail)
{
tail=p;
p->next=NULL;
inklist<T>::~inklist()
{
link<T> *tmp;
while(head!=NULL)
{
tmp=head;
head=head->next;
delete tmp;
}
}
template<class T>
link<T> *inklist<T>::setpos(int i)
{
int count=0;
{
link<T> *p,*q;
if((p=setpos(i-1))==NULL){
cout<<"非法插入点"<<endl;
return false;}
q=new link<T>(value,p->next);
p->next=q;
if(p==tail)
tail=q;
return true;}
template<class T>
return head;
link<T> *p=new link<T>(head->next);
while( p!=NULL && count<i)
{
p=p->next;
count++;
}
return p;
}
template<class T>
bool inklist<T>::insert(const int i,const T value)
{
cout<<p->date<<" ";
p=p->next;
}
cout << endl;
}
void main()
{
inklist<int> b;
int i,a[10];
for(i=0;i<5;i++)
{
cin>>a[i];
b.append(a[i]);
}
b.print();
}
{
next=nextvalue;
}
};
template<class T>class inklist{
private:
link<T> *head,*tail;
link<T> *setpos(const int p);
public:
inklist();
~inklist();
bool append(const T value);
deleteቤተ መጻሕፍቲ ባይዱq;
}
else
{
p->next=q->next;
delete q;
}
return true;
}
template<class T>
bool inklist<T>::append(const T value)
{
if(tail==NULL){
head->next=tail=new link<T>(value,NULL);
#include<iostream.h>
template<class T>
class link
{
public:
T date;
link<T> *next;
link(const T info, link<T> *nextvalue=NULL)
{
date=info;
next=nextvalue;
}
link(link<T> *nextvalue)
bool insert(const int p,const T value);
bool remove(const int p);
void print();
};
template<class T>
inklist<T>::inklist()
{
head=tail=new link<T>(NULL);
}
template<class T>
return true;}
else{
tail->next=new link<T>(value,NULL);
tail=tail->next;
return true;
}
}
template<class T>
void inklist<T>::print()
{
link<T>*p;
p=head->next;
while(p!=NULL)
bool inklist<T>::remove(const int i)
{
link<T> *p,*q;
if((p=setpos(i-1))==NULL||p==tail)
{
cout<<"非法删除点";
return false;
}
q=p->next;
if(q==tail)
{
tail=p;
p->next=NULL;
inklist<T>::~inklist()
{
link<T> *tmp;
while(head!=NULL)
{
tmp=head;
head=head->next;
delete tmp;
}
}
template<class T>
link<T> *inklist<T>::setpos(int i)
{
int count=0;
{
link<T> *p,*q;
if((p=setpos(i-1))==NULL){
cout<<"非法插入点"<<endl;
return false;}
q=new link<T>(value,p->next);
p->next=q;
if(p==tail)
tail=q;
return true;}
template<class T>