单链表的拆分 SDUT -2120
来源:互联网 发布:苹果下载必备软件 编辑:程序博客网 时间:2024/05/24 03:21
数据结构实验之链表五:单链表的拆分
Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^
题目描述
输入N个整数顺序建立一个单链表,将该单链表拆分成两个子链表,第一个子链表存放了所有的偶数,第二个子链表存放了所有的奇数。两个子链表中数据的相对次序与原链表一致。
输入
第一行输入整数N;;
第二行依次输入N个整数。
输出
第一行分别输出偶数链表与奇数链表的元素个数;
第二行依次输出偶数子链表的所有数据;
第三行依次输出奇数子链表的所有数据。
示例输入
10
1 3 22 8 15 999 9 44 6 1001
示例输出
4 6
22 8 44 6
1 3 15 999 9 1001
#include <bits/stdc++.h>using namespace std;struct node{ int data; node *next;};int main(){ int n; node *head1,*head2,*tail,*q,*p; head1 = new node; head1->next = NULL; head2 = new node; head2->next = NULL; tail = head1; cin>>n; for(int i=0;i<n;i++) { q = new node; cin>>q->data; q->next = NULL; tail->next = q; tail = q; } int m = 0; p = head1->next; tail = head2; q = head1; while(p) { if(p->data%2 == 0) { q->next = p->next; tail->next = p; p->next = NULL; tail = p; p = q->next; n--; m++; } else { p = p->next; q = q->next; } } cout<<m<<" "<<n<<endl; p = head2->next; while(p) { if(p->next) cout<<p->data<<" "; else cout<<p->data<<endl; p = p->next; } p = head1->next; while(p) { if(p->next) cout<<p->data<<" "; else cout<<p->data<<endl; p = p->next; } return 0;}
0 0
- 单链表的拆分 SDUT -2120
- SDUT 2120 数据结构实验之链表五:单链表的拆分
- SDUT 2120 数据结构实验之链表五-单链表的拆分
- SDUT 2120-数据结构实验之链表五:单链表的拆分
- SDUT 1263 自然数的拆分
- SDUT OJ 数据结构实验之链表五:单链表的拆分
- sdut oj数据结构实验之链表五:单链表的拆分
- SDUT-数据结构实验之链表五:单链表的拆分
- SDUT 1263 自然数的拆分 递归
- 单链表的拆分
- 单链表的拆分
- 单链表的拆分
- 单链表的拆分
- 单链表的拆分
- 单链表的拆分
- 单链表的链表拆分
- 链表F 单链表的拆分
- 【2120】数据结构实验之链表五:单链表的拆分 sdutOJ
- 互联网+
- 砸金花作弊高科技◤□【在线演示QQ:194714506】
- P122.40
- SpringMVC笔记
- 砸金花变牌高科技╯★【在线演示QQ:194714506】
- 单链表的拆分 SDUT -2120
- 砸金花变牌视频ξ▆【在线演示QQ:194714506】
- 三公作弊高科技》Ψ【在线演示QQ:194714506】
- Cocos2d-x 3.x 头像选择器,本地相册与拍照+头像编辑功能(Android、IOS双平台实现)
- 三公变牌高科技╭↙【在线演示QQ:194714506】
- 使用JQuery数据模板Handlerbars
- 三公变牌视频ㄨ▆【在线演示QQ:194714506】
- 普通扑克作弊高科技█◥【在线演示QQ:194714506】
- 一些有意思的网页