資料結構那點事--線性表(迴圈列表)
阿新 • • 發佈:2018-12-11
#include<iostream> using namespace std; typedef struct DulNode { ElemType data; struct DuLNode *prior;//直接前驅結點 struct DuLNode *next;//直接後驅節點 }DulNode,*DuLinkList; //插入元素 Status ListInsert(LinkList *L,int i,ElemType e) { int j; LinkList p,s; p=*L; j=1; while(p&&j<i) { p=p->next; j++; } if(j>i||!p) { return ERROR; } s=(LinkList)malloc(sizeof(Node)); s->data=e; s->next=p->next; p->next=s; return OK; } //刪除元素操作 Status ListDelete(LinkList *L,int i,ElemType *e) { int j; LinkList p,q; p=*L; j=1; while(p&&j<i) { p=p->next; j++; } if(j>i||!p) { return ERROR; } q=p->next; *e=q->data; p->next=q->next; free(q); return OK; }