链表问题,有没有什么办法可以加快链表的创建速度呢?
如题
LISTNAME* ListCreat(int ListSpace){ LISTNAME*p1,*p2; p1=p2=new LISTNAME; if(ListSpace==1) { p1->Next=NULL; p1->Last=NULL ; return p1; } if(ListSpace==2) { p1->Last=NULL; p1->Next=p2; p2->Last=p1; p2->Next=NULL; return p1; } int tmp=ListSpace; LISTNAME* Head=new LISTNAME; while(ListSpace!=0) { if(ListSpace+1==tmp) { Head->Last=NULL; Head->Next=p1; } {p1->Next=p2; p2->Last=p1; p2->Next=NULL; } {p1=p2; p2=NULL;//清空节点 p2=new Student;//开辟新的节点 ListSpace--; } }p2->Next=NULL;//再次设置p2 return Head;}//funtion endint main(){ Student* a; Student* b; a=ListCreat(20);//如果我把这行写成65535或者更大的数字,怎么样可以利用算法加快链表创建呢? b=a; for(;a!=NULL;) { cout<<a<<endl; a=a->Next; } cout<<endl; return 0;}