数据结构上机测试2-1:单链表操作A
来源:互联网 发布:java电商项目视频教程 编辑:程序博客网 时间:2024/05/01 07:47
Problem Description
输入n个整数,先按照数据输入的顺序建立一个带头结点的单链表,再输入一个数据m,将单链表中的值为m的结点全部删除。分别输出建立的初始单链表和完成删除后的单链表。
Input
第一行输入数据个数n;
第二行依次输入n个整数;
第三行输入欲删除数据m。
第二行依次输入n个整数;
第三行输入欲删除数据m。
Output
第一行输出原始单链表的长度;
第二行依次输出原始单链表的数据;
第三行输出完成删除后的单链表长度;
第四行依次输出完成删除后的单链表数据。
第二行依次输出原始单链表的数据;
第三行输出完成删除后的单链表长度;
第四行依次输出完成删除后的单链表数据。
Example Input
1056 25 12 33 66 54 7 12 33 1212
Example Output
1056 25 12 33 66 54 7 12 33 12756 25 33 66 54 7 33
Author
#include <bits/stdc++.h>using namespace std;struct node{ int data; struct node *next;};struct node *Creat(int n){ struct node *head,*tail,*p; int i; head=new struct node; head->next=NULL; tail=head; for(i=0;i<n;i++) { p=new struct node; cin>>p->data; p->next=NULL; tail->next=p; tail=p; } return (head);};void DisList(struct node *head){ struct node *r; int i,j,k; r=head->next; while(r) { if(r->next==NULL) cout<<r->data<<endl; else cout<<r->data<<" "; r=r->next; }}void DelList(struct node *head,int n,int m){ struct node *t,*r,*p; int k=0; p=head; r=p->next; while(r) { if(m==r->data) { p->next=r->next; r=p->next; k++; } else { p=p->next; r=r->next; } } cout<<n-k<<endl; DisList(head);}int main(){ struct node *head,*r; int i,j,n,m,k; cin>>n; head=Creat(n); cin>>m; cout<<n<<endl; DisList(head); DelList(head,n,m); return 0;}
0 0
- 1138 数据结构上机测试2-1:单链表操作A
- 数据结构上机测试2-1:单链表操作A
- 数据结构上机测试2-1:单链表操作A
- 数据结构上机测试2-1:单链表操作A
- 数据结构上机测试2-1:单链表操作A
- 数据结构上机测试2-1:单链表操作A
- 数据结构上机测试2-1:单链表操作A
- 数据结构上机测试2-1:单链表操作A
- 数据结构上机测试2-1:单链表操作A
- 数据结构上机测试2-1:单链表操作A
- SDUToj1138数据结构上机测试2-1:单链表操作A
- 数据结构上机测试2-1:单链表操作A
- 数据结构上机测试2-1:单链表操作A
- 数据结构上机测试2-1:单链表操作A
- 【1138】数据结构上机测试2-1:单链表操作A
- SDUT1138数据结构上机测试2-1:单链表操作A
- 数据结构上机测试2-1:单链表操作A
- 数据结构上机测试2-1:单链表操作A
- 微软面试100题系列---求二叉树中节点的最大距离
- linux解压xxx.tar.bz2
- 选择语句
- 第7个python程序:更多打印
- 电话拨号盘T9搜索原理
- 数据结构上机测试2-1:单链表操作A
- 关于磁珠的用法
- 训练Faster R-CNN出现的errors
- 各类行业代码
- 正则表达式,用理解代替记忆(基于Perl)
- HDU 5835 Danganronpa(贪心)
- Python单例模式的4种实现方法
- 最新Android之支持多进程、多线程的TrayPreferences代替SharedPreferences 的总结
- Unity小知识