【C】两个有序链表序列的交集
来源:互联网 发布:淘宝助理数据设置 编辑:程序博客网 时间:2024/05/16 17:53
程序代码:
#include<stdio.h>#include<stdlib.h>struct ListNode{ int data; struct ListNode* next;};typedef struct ListNode node;int main(){ int i; node l1,l2,l3; l1.next=NULL; l2.next = NULL; l3.next = NULL; node* p = &l1; char c; while((scanf("%d",&i))&&i!=-1) { node* s = (node*)malloc(sizeof(node)); s->data = i; s->next = NULL; p->next=s; p=p->next; } p=&l2; while((scanf("%d",&i))&&i!=-1) { node* s = (node*)malloc(sizeof(node)); s->data = i; s->next = NULL; p->next=s; p=p->next; } p=l1.next; node *q=l2.next; node *m = &l3; while((p!=NULL)&&(q!=NULL)) { if((p->data)<(q->data)) { p=p->next; } else if((p->data)>(q->data)) { q=q->next; } else if((p->data)==(q->data)) { node* s = (node*)malloc(sizeof(node)); s->data = p->data; s->next = NULL; m->next = s; m= m->next; p = p->next; q = q->next; } } m=l3.next; if(l3.next==NULL) { printf("NULL");return 0;} while(m!=NULL) { if(m->next==NULL) printf("%d",m->data); else printf("%d ",m->data); m=m->next; } return 0;}
程序运行结果:
0 0
- 【C】两个有序链表序列的交集
- 两个有序链表序列的交集
- PAT 2-12. 两个有序链表序列的交集
- PAT2-12. 两个有序链表序列的交集
- 2-12. 两个有序链表序列的交集
- 2-12. 两个有序链表序列的交集
- pat 2-12. 两个有序链表序列的交集
- 5-16 两个有序链表序列的交集
- PTA习题 两个有序链表序列的交集
- 7-2 两个有序链表序列的交集
- 两个有序链表序列的交集(20 分)
- 7-2 两个有序链表序列的交集
- pta 两个有序链表序列的交集
- 链表——两个有序链表序列的交集
- PAT 2-12 两个有序链表序列的交集(C语言实现)
- 浙江大学PAT上机题解析之2-12. 两个有序链表序列的交集
- 浙大PAT 2-12. 两个有序链表序列的交集 (解题思路)
- PAT DS 2-11 两个有序链表序列的交集
- thinkphp AOP(面向切面编程)
- Linux学习笔记--关机重启及用户登录查看命令
- 安卓5.0新控件-----RecyclerView
- spring笔记(四)
- 一个可以接收字符,若是小写则输出,若是大写则转化为对应的小写,若是数字不输出
- 【C】两个有序链表序列的交集
- 解决Selenium弹出新页面无法定位元素问题(Unable to locate element)
- 一位资深程序员大牛给予Java初学者的学习建议
- 微软开源Malmo AI项目平台 利用Minecraft构建复杂机器人任务
- mySQL的 插入 查询 更新
- [最大流]增广路算法Edmonds-Karp
- 【Android】另一种Tab的实现--TabLayout
- bzoj 4602 DFS
- 华为OJ——成绩排序