1.单链表的存储结构
typedef struct LNode{
int data;
struct LNode *next;
}LNode *LinkList;
2.(插)
status ListInsert(LinkList &L;int i;int e)
{
p=L;j=0;
while(p&&j<i-1)
{
p=p->next
j++;
}
if(!p||j>i-1)
{
return error
}
s=(LinkList)malloc(sizeof(LNode));
s->data=e;s->next=p->next;
p->next=s;
return ok;
}
3.(删)
status LinkDelete(LinkList &L;int i,int e)
{
p=L;j=0;
while(p->next&&j<i-1)
{
p=p->next;
j++;
}
if(!(p->next)||j>i-1)
retrun error;
//p->next=p->next->next
q=p->next;p->next=q->next;
e=q->data; free(q);
return ok;
}
4.(查)
status get(LinkList &L ,int i;int e)
{
p=L->next; i=1;
while(p&&j<i)
{
p=p->next;
j++;
}
if(!p&&j>i)
return ok;
e=p->data;
return ok;
}