数据结构实验之链表四:有序链表的归并
来源:互联网 发布:电脑免费剪辑软件 编辑:程序博客网 时间:2024/06/05 19:33
Problem Description
分别输入两个有序的整数序列(分别包含M和N个数据),建立两个有序的单链表,将这两个有序单链表合并成为一个大的有序单链表,并依次输出合并后的单链表数据。
Input
第一行输入M与N的值;
第二行依次输入M个有序的整数;
第三行依次输入N个有序的整数。
第二行依次输入M个有序的整数;
第三行依次输入N个有序的整数。
Output
输出合并后的单链表所包含的M+N个有序的整数。
Example Input
6 51 23 26 45 66 9914 21 28 50 100
Example Output
1 14 21 23 26 28 45 50 66 99 100
Hint
不得使用数组!
#include<stdio.h>#include<string.h>#include<stdlib.h>#define ERROR -1#define OVERFLOW -2#define OK 1typedef int Elemtype;typedef int Statu;typedef struct Lnode{ Elemtype data; struct Lnode *next;} Link;Link * Creat(int n);Link * Negative(Link *head);Statu Dis_Link(Link *head);Statu Merger(Link *head1, Link *head2);int main(){ int n, m; Link *head1, *head2; scanf("%d%d", &n, &m); head1 = Creat(n); head2 = Creat(m); Merger(head1,head2); return 0;}Link *Creat(int n){ Link *head, *p, *q; head = (Link *)malloc(sizeof(Link)); head -> next = NULL; q = head; while(n--) { p = (Link *)malloc(sizeof(Link)); p -> next = NULL; scanf("%d", &p -> data); q -> next = p; q = p; } return head;}Link * Negative(Link *head){ Link *q, *p; p = head -> next; head -> next = NULL; q = p -> next; while(p) { p -> next = head -> next; head -> next = p; p = q; if(q) { q = q -> next; } } return head;}Statu Dis_Link(Link *head){ Link *p; p = head -> next; while(p -> next) { printf("%d ", p -> data); p = p -> next; } printf("%d\n", p -> data); return OK;}Statu Merger(Link *head1, Link *head2){ Link *p, *q, *r; p = head1 -> next; q = head2 -> next; r = head1; while(p && q) { if(p -> data < q -> data) { r -> next = p; r = p; p = p -> next; } else { r -> next = q; r = q; q = q -> next; } } if(p) { r -> next = p; } else r -> next = q; Dis_Link(head1); return OK;}
阅读全文
0 0
- 2119 数据结构实验之链表四:有序链表的归并
- 数据结构实验之链表四:有序链表的归并
- 数据结构实验之链表四:有序链表的归并
- 数据结构实验之链表四:有序链表的归并
- 数据结构实验之链表四:有序链表的归并
- 数据结构实验之链表四:有序链表的归并
- 数据结构实验之链表四:有序链表的归并
- 【2119】数据结构实验之链表四:有序链表的归并
- 数据结构实验之链表四:有序链表的归并
- 数据结构实验之链表四:有序链表的归并
- 数据结构实验之链表四:有序链表的归并
- 数据结构实验之链表四:有序链表的归并
- 数据结构实验之链表四:有序链表的归并
- 数据结构实验之链表四:有序链表的归并
- 数据结构实验之链表四:有序链表的归并
- 数据结构实验之链表四:有序链表的归并
- 数据结构实验之链表四:有序链表的归并
- 数据结构实验之链表四:有序链表的归并
- 基于python的selenium自动化测试环境搭建
- 动态规划问题3-矩阵连乘问题
- leetcode 73
- ISAP算法
- URAL 1141(扩展欧几里德+欧拉函数)
- 数据结构实验之链表四:有序链表的归并
- Android上的Notification
- Eclipse常用快捷键
- java集成支付宝支付接口(JSP+支付宝20160912)
- 读取excel文件数据集,生成固定格式excel文件
- Linux安装SS服务端
- 求伯君的传奇经历
- Qml弹出右侧信息弹窗
- 架构师之路(7)互联网架构之“高并发”