#include"随意.cpp"
int main()
{
int a[5] = {1,2,3,4,5};
int e;
LinkNode *L,*L1,*L2;
InitList(L1);
InitList(L2);
CreatListF(L,a,5);
split(L,L1,L2);
DispList(L2);
DispList(L1);
}
void InitList(LinkNode *&L)
{
L = (LinkNode*)malloc(sizeof(LinkNode));
L->next = NULL;
}
void CreatListF(LinkNode*& L,ElemType a[],int n)
{
LinkNode *p;
L = (LinkNode*)malloc(sizeof(LinkNode));
L->next = NULL;
for(int i = 0;i<n;i++)
{
p = (LinkNode*)malloc(sizeof(LinkNode));
p->data = a[i];
p->next = L->next;
L->next = p;
}
}
void split(LinkNode *L,LinkNode *&L1,LinkNode *&L2)
{
LinkNode *p = L->next,*pre = L1,*pre1;
while(p!=NULL)
{
pre->next = p;
pre = p;
p = p->next;
if(p!=NULL)
{
pre1 = p->next;
p->next = L2->next;
L2->next = p;
p = pre1;
}
}
pre->next = NULL;
}
void DispList(LinkNode*L)
{
LinkNode* p=L;
for(int i = 0;p!=NULL;i++)
{
p = p->next;
printf("%d",p->data);
}
printf("\n");
}