Link1: 10,30,50,70
Link2: 20,40,60,80
NewLink: 10,20,30,40,50,60,70,80
typedef struct Node{
int data;
struct Node *pnext;
}Node;
void NewLink(Node *NewLink,Node *Link1,Node *Link2){
Node *ptail=NewLink;
Node *ptemp1=Link1;
Node *ptemp2=Link2;
while(ptemp1!=NULL&&ptemp2!=NULL){
if(ptemp1->data <= ptemp2->data){
ptail->pnext=ptemp1;
ptail=ptemp1;
ptemp1=ptemp1->pnext;
ptail->pnext=ptemp2;
ptail=ptemp2;
ptemp2=ptemp2->pnext;
}
else{
ptail->pnext=ptemp1;
ptail=ptemp1;
ptemp1=ptemp1->pnext;
ptail->pnext=ptemp2;
ptail=ptemp2;
ptemp2=ptemp2->pnext;
}
}
}
int main(void)
{
Node Link1;
Node Link2;
Node Newl;
Link_Init(&Link1);
Link_Init(&Link2);
Link_Init(&Newl);
Link_into(&Link1,10);
Link_into(&Link1,30);
Link_into(&Link1,50);
Link_into(&Link1,70);
Link_into(&Link2,20);
Link_into(&Link2,40);
Link_into(&Link2,60);
Link_into(&Link2,80);
NewLink(&Newl,&Link1,&Link2);
print_Link(&Newl);
printf("Hello World!\n");
return 0;
}
网友评论