有序链式表合并,有序链式表n,m 其元素均由小到大的升序排列。将它们合并成一个顺序表C,C的元素也是由小到打的升序排列
#include "pch.h"
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <string.h>
/**
单链表归并
**/
typedef int datatype;
typedef struct LNode
{
datatype data;
struct LNode *next;
}LNode;
// 尾插法创建链表C
void createlistR(LNode * &C, int a[], int n)
{
LNode *s, *r; // s 用来指向新申请的结点,r始终指向c的终端结点
int i = 0;
C = (LNode *)malloc(sizeof(LNode)); // 申54请C的头结点空间
memset(C, 0, sizeof(LNode));
C->next = NULL;
r = C; // r 指向头结点 因为此时头结点就是终端结点
for ( i = 0; i < n ; i++)
{
s = (LNode * )malloc(sizeof(LNode));
memset(s, 0, sizeof(LNode));
s->data = a[i];
s->next = C->next;
r->next = s;
r = r->next;
}
r->next = NULL;
}
// 打印链表
void printLink(LNode *Lnode)
{
LNode * p = Lnode->next;
while (p)
{
p