資源簡(jiǎn)介
雙鏈表的一些基本函數(shù)和基本操作
代碼片段和文件信息
#include
#include
typedef?char?ElemType;
typedef?struct?DNode?/*定義雙鏈表結(jié)點(diǎn)類(lèi)型*/
{
?ElemType?data;
?struct?DNode?*?prior;/*指向前驅(qū)結(jié)點(diǎn)*/
?struct?DNode?*?next;/*指向后繼結(jié)點(diǎn)*/
}DlinkList;
void?InitList(DlinkList?*?&L)
{
?L=(DlinkList?*)malloc(sizeof(DlinkList));/*創(chuàng)建頭結(jié)點(diǎn)*/
?L->prior=L->next=NULL;
}
void?DestroyList(DlinkList?*?&L)
{
?DlinkList?*p=L*q=p->next;
?while(q!=NULL)
?{
??free(p);
??p=q;
??q=p->next;
?}
?free(p);
}
int?ListEmpty(DlinkList?*L)
{
?return(L->next==NULL);
}
int?ListLength(DlinkList?*L)
{
?DlinkList?*p=L;
?int?i=0;
?while(p->next!=NULL)
?{
??i++;
??p=p->next;
?}
?return(i);
}
void?DispList(DlinkList?*L)
{
?DlinkList?*p=L->next;
?while(p!=NULL)
?{
??printf(“%c“p->data);
??p=p->next;
?}
?printf(“\n“);
}
int?GetElem(Dlink
評(píng)論
共有 條評(píng)論