(p->next != NULL)Р?{?Р q = p->next;Р while (q != NULL)Р {Р if (p->data > q->data)Р {Р ch = p->data;Р p->data = q->data;Р q->data = ch;Р }Р q = q->next;Р }Р p = p->next;Р?}?Р?return L;Р }Р5.编写函数,利用以上算法,建立两个非递减有序单链表,然后合并成一个非递减链表。Р#include <stdio.h>Р#include <stdlib.h>Р/*建立单链表*/Рtypedef structР{Р?char data;Р?struct Node *next;Р}Node, *LinkList;Рvoid printLink(LinkList L);РLinkList CreateFromTail();РLinkList sortAscend(LinkList L);РLinkList MergeLinkList(LinkList LA, LinkList LB);Рint main()Р{Р?LinkList L, head;Р?Р?L = CreateFromTail();Р?head = CreateFromTail();Р?printf("第一个单链表为:> ");Р?printLink(L);Р?printf("\n");Р?printf("第二个单链表为:> ");Р?printLink(head);Р?printf("\n");Р?L = sortAscend(L);Р?printf("第一个有序单链表为:> ");Р?printLink(L);Р?printf("\n");Р?head = sortAscend(head);Р?printf("第二个有序单链表为:> ");