02-线性结构1 两个有序链表序列的合并 (15分)
来源:互联网 发布:淘宝联盟找不到商品 编辑:程序博客网 时间:2024/04/30 03:01
题目:https://pta.patest.cn/pta/test/1342/exam/3/question/19208
注意
提交时候只需要把Merge的函数提交即可
定义变量 记得及时初始化 尤其是在malloc时候 特别注意
#include <stdio.h>#include <stdlib.h>typedef int ElementType;typedef struct Node *PtrToNode;struct Node { ElementType Data; PtrToNode Next;};typedef PtrToNode List;List Read(){ int T = 0, K = 0; List Last = NULL; List L = NULL; scanf("%d", &T); if(T == 0){ return NULL; } L = (List)malloc(sizeof(struct Node)); L -> Next = NULL; Last = L; for(int i = 0 ; i < T; ++i){ scanf("%d", &K); List node = (List)malloc(sizeof (struct Node)); node -> Data = K; node -> Next = NULL; Last -> Next = node; Last = node; } return L;}void Print(List L){ if(L -> Next == NULL){ puts("NULL"); return; } L = L -> Next; while(L != NULL){ printf("%d ", L -> Data); L = L -> Next; } printf("\n");}/** 将两个链表合为一个 无论是L1 还是 L2 有多的数 均添加到L1 ,然后让 表头指向 即可*/List Merge( List L1, List L2 ){ List p, LL1, LL2; List Head = (List)malloc(sizeof(List)); Head -> Next = NULL; p = Head; LL1 = L1 -> Next; LL2 = L2 -> Next; while(LL1 != NULL && LL2 != NULL){ if(LL1 -> Data <= LL2 -> Data){ p -> Next = LL1; LL1 = LL1 -> Next; }else{ p -> Next = LL2; LL2 = LL2 -> Next; } p = p -> Next; } p -> Next = LL1 ? LL1 : LL2; //归零 L1 -> Next = NULL; L2 -> Next = NULL; return Head;}int main(){ List L1, L2, L; L1 = Read(); L2 = Read(); L = Merge(L1, L2); Print(L); Print(L1); Print(L2); return 0;}
0 0
- 02-线性结构1 两个有序链表序列的合并 (15分)
- 02-线性结构1 两个有序链表序列的合并 (15分)
- 02-线性结构1 两个有序链表序列的合并 (15分)
- PTA 02-线性结构1 两个有序链表序列的合并 (15分)
- 02-线性结构1 两个有序链表序列的合并 (15分)
- 02-线性结构1 两个有序链表序列的合并 (15分)
- 02-线性结构1 两个有序链表序列的合并 (15分)
- 02-线性结构1 两个有序链表序列的合并 (15分)
- 02-线性结构1 两个有序链表序列的合并 (15分)
- 02-线性结构1 两个有序链表序列的合并 (15分)
- 02-线性结构1 两个有序链表序列的合并(15 分)
- 02-线性结构1 两个有序链表序列的合并(15 分)
- 02-线性结构1 两个有序链表序列的合并(15 分)
- 02-线性结构1 两个有序链表序列的合并(15 分)
- PAT数据结构_02-线性结构1 两个有序链表序列的合并 (15分)
- [PTA] 线性结构1 两个有序链表序列的合并(15 分)
- 02-线性结构1 两个有序链表序列的合并 (15分) (单向链表)
- 02-线性结构1 两个有序链表序列的合并 (15分)
- Hbase优化思路
- PAT A 1013. Battle Over Cities (25)
- 多重背包-O(VN)详解
- 正式发售超两周 iPhone7部分机型仍然缺货
- 承接上--URL
- 02-线性结构1 两个有序链表序列的合并 (15分)
- set的hashset和treeSet
- Linux + QQ feiqiu iptux
- 51nod 1640 天气晴朗的魔法(kruskal)
- CF 185A(递推式构造矩阵求解)
- webdriver-使用自定义的firefox配置
- win7 32+vs2012+opencv3.0.0配置
- 23种设计模式全解析
- Android入门教程 fragment通信