#include "stdio.h"
#include "stdlib.h"
typedef struct node
{
int data;
struct node *next;
}Lnode,*Linklist;
show(Lnode *h)
{
Linklist p=h;
while(p)
{
printf("%d->",p->data);
p=p->next;
}
};
void CreateListR(Lnode *&L,int a[],int n)
//尾插法建立单链表
{
Lnode *s,*r;
L=(Lnode *)malloc(sizeof(Lnode)); //创建头结点
L->next=NULL;
r=L; //r始终指向终端结点,开始时指向头结点
for (int i=0;i<n;i++)
{
s=(Lnode *)malloc(sizeof(Lnode));//创建新结点s
s->data=a[i];
r->next=s; //将结点s插入结点r之后
r=s;
}
r->next=NULL; //终端结点next域置为NULL
};
Lnode *Insert(Lnode *h,int i,int x){//i为元素,x为位置
Lnode *temp=h;
Lnode *insert =NULL;
int j=0;
for(j=1;j<x;j++)
{
if(temp==NULL)
{
printf("输入无效!\n");
return h;
}
temp=temp->next;
}
insert=(Lnode *)malloc(sizeof(Lnode));
insert->data=i;
insert->next=temp->next;
temp->next=insert;
return h;
};
Lnode *Delete(Lnode * h, in