【应用】归并有序表
来源:互联网 发布:toefl培训知乎 编辑:程序博客网 时间:2024/06/05 07:30
描述
给你两个有序且升序的数组,请你把它们合成一个升序数组并输出
Give you two ordered ascending array, you put them into one ascending array and output.
输入
第一行为一个正整数n,n<=20 ;
第二行为n个数字,这n个数字用空格隔开
第三行为一个正整数m,m<=20 ;
第四行为M个数字,这m个数字用空格隔开
The first line is a positive integer n, n <= 20;
The second line are n numbers separated by space
The third is a positive integer m, m <= 20;
The fourth line are m numbers separated by space
输出
输出合并后的数组,每个数字占一行,
Output the combined array, each number per line,
输入样例
3
1 3 7
5
2 4 6 8 10
输出样例
1
2
3
4
6
7
8
10
#include <stdio.h>#include <stdlib.h>#include <string.h>typedef int DataType; /*数据类型*/typedef int ElemType; /*元素类型*///----------------线性列表存储结构----------------typedef struct LNode{ ElemType data; struct LNode *next;}LNode, *LinkList;void ListCreate(LinkList L, int n)//创建含有n个结点的链表{ int i; LinkList p, q; p = L; for(i = 0 ; i < n; i++) { q = (LinkList)malloc(sizeof(LNode)); //生成新结点 scanf("%d", &q->data); q->next = NULL; p->next = q; //前后结点链接 p = q; }}void ListMerge(LinkList La, LinkList Lb, LinkList Lc){ LinkList pa = La->next, pb = Lb->next; LinkList pc = Lc; while(pa && pb) { if(pa->data <= pb->data) { pc ->next = pa; pc = pa; pa = pa->next; } else { pc->next = pb; pc = pb; pb = pb->next; } } pc->next = pa?pa:pb; //插入剩余段 free(La); free(Lb);}void ListTraverse(LinkList L){ LinkList p = L; while(p->next) { p = p->next; printf("%d\n", p->data); }}int main(){ LNode La, Lb, Lc; int n; scanf("%d", &n); ListCreate(&La, n); scanf("%d", &n); ListCreate(&Lb, n); ListMerge(&La, &Lb, &Lc); ListTraverse(&Lc); return 0;}
0 0
- 【应用】归并有序表
- 线性表应用-有序顺序表归并
- 顺序表应用 有序顺序表 归并
- [SDUT](3329)顺序表应用5:有序顺序表归并 ---有序表归并(线性表)
- 顺序表应用5:有序顺序表归并
- 顺序表应用5:有序顺序表归并
- 顺序表应用5:有序顺序表归并
- 顺序表应用5:有序顺序表归并
- 顺序表应用5:有序顺序表归并
- 【3329】顺序表应用5:有序顺序表归并
- 顺序表应用5:有序顺序表归并
- 顺序表应用5:有序顺序表归并
- 顺序表应用5:有序顺序表归并
- 顺序表应用5:有序顺序表归并
- 顺序表应用5:有序顺序表归并
- 顺序表应用5:有序顺序表归并
- sdut oj3329 顺序表应用5:有序顺序表归并
- 顺序表应用5:有序顺序表归并
- ubuntu14.04 caffe配置中cudnn的配置
- linux 挂载硬盘,创建新分区,删除分区
- 数据结构之数组和字符串的反转java实现
- [数据挖掘]离群点检测---基于kNN的离群点检测、LOF算法和CLOF算法
- HDU 1713 相遇周期【这也算数学吗?】
- 【应用】归并有序表
- 如何自己创建Servlet并配置web.xml
- 自学BootStrap(第一季)
- C++创建二叉树(一)
- 学习设计模式笔记
- iOS 多线程之GCD
- 欢迎使用CSDN-markdown编辑器
- 题目1019:简单计算器
- 蓝桥杯-基础练习-十进制转十六进制