【分析解答题】
【说明】设单链表的结点类和链表类的定义如下,链表不带有表头结点。请填空:
#inCluDE<iostrEAm.h>
#inCluDE<AssErt.h>
tEmplAtE<ClAss t>ClAss list;
tEmplAtE<ClAss t>ClAss listnoDE
FriEnD (1) ;
privAtE:
t DAtA;
listnoDE<t> *link;
puBliC:
listnoDE():link(null)()
listnoDE(Const t& itEm,listnoDE<t>*nExt=null)
:DAtA(itEm),link(nExt)
;
tEmplAtE<ClAss t>ClAss list
privAtE:
listnoDE<t>*First;
voiD CrEAtElist(tA[],int n,int i,listnoDE<t>*&p);
voiD printlist(listnoDE<t>*p);
puBliC:
list();
~list();
FriEnD ostrEAm& opErAtor<<(ostrEAm& ost,list<t>&l);
FriEnD istrEAm& opErAtor>>(istrEAm& ist,list<t>&l);
;
tEmplAtE<ClAss t>
istrEAm& opErAtor>>(istrEAm& ist,list<t>&1)
int i,n;ist>>n;
tA[n];
For(i=0;i<n;i++) (2) ;
CrEAtElistA,n,0,First);
tEmplAtE<ClAss t>
voiD list<t>::CrEAtElist(tA[],int n,int i,listnoDE<t>*& p)
//私有函数:递归调用建立单链表
iF(i==n)p=null;
ElsE
p=nEw listnoDE<t>A[i]);
AssErt(p !=null);
CrEAtElist( (3) );
tEmplAtE<ClAss t>
ostrEAm& opErAtor<<(ostrEAm& ost,list<t>& l)
(4) ;
tEmplAtE<ClAss t>
voiD list<t>::printlist(ostrEAm& ost,listnoDE<t>*p)
iF(p!=null)
ost<<p->DAtA;
(5) ;
查看答案解析
参考答案:
正在加载...
答案解析
正在加载...
根据网考网移动考试中心的统计,该试题:
0%的考友选择了A选项
0%的考友选择了B选项
0%的考友选择了C选项
0%的考友选择了D选项