sdut oj数据结构实验之链表五:单链表的拆分
来源:互联网 发布:淘宝ins是什么品牌 编辑:程序博客网 时间:2024/05/16 04:52
题目链接:点击打开链接
数据结构实验之链表五:单链表的拆分
Time Limit: 1000MS Memory Limit: 65536KB
SubmitStatistic
Problem Description
输入N个整数顺序建立一个单链表,将该单链表拆分成两个子链表,第一个子链表存放了所有的偶数,第二个子链表存放了所有的奇数。两个子链表中数据的相对次序与原链表一致。
Input
第一行输入整数N;;
第二行依次输入N个整数。
第二行依次输入N个整数。
Output
第一行分别输出偶数链表与奇数链表的元素个数;
第二行依次输出偶数子链表的所有数据;
第三行依次输出奇数子链表的所有数据。
第二行依次输出偶数子链表的所有数据;
第三行依次输出奇数子链表的所有数据。
Example Input
101 3 22 8 15 999 9 44 6 1001
Example Output
4 622 8 44 6 1 3 15 999 9 1001
Hint
不得使用数组!
代码实现:
#include <stdio.h>#include <stdlib.h>#include <string.h>#include <iostream>using namespace std;int num1 = 0,num2 = 0;typedef int element;struct node{ element data; node *next;}*head1,*head2;node *Creat(int n){ node *head,*tail,*p; head = new node; head->next = NULL; tail = head; while(n--) { p = new node; scanf("%d",&p->data); tail->next = p; p->next = NULL; tail = p; } return head;}void Inverse(node *head){ node *p,*q,*tail1,*tail2; head1 = new node; head2 = new node; head1->next = NULL; head2->next = NULL; tail1 = head1; tail2 = head2; p = head->next; while(p) { q = p->next; if(p->data%2 == 0) { tail1->next = p; p->next = NULL; tail1 = p; p = q; num1++; } else { tail2->next = p; p->next = NULL; tail2 = p; p = q; num2++; } }}void display(node *head){ node *p; p = head->next; while(p) { if(p->next) printf("%d ",p->data); else printf("%d\n",p->data); p = p->next; }}int main(){ node *head; int n; scanf("%d",&n); head = Creat(n); Inverse(head); printf("%d %d\n",num1,num2); display(head1); display(head2); return 0;}
0 0
- SDUT OJ 数据结构实验之链表五:单链表的拆分
- sdut oj数据结构实验之链表五:单链表的拆分
- SDUT 2120 数据结构实验之链表五:单链表的拆分
- SDUT-数据结构实验之链表五:单链表的拆分
- SDUT 2120 数据结构实验之链表五-单链表的拆分
- SDUT 2120-数据结构实验之链表五:单链表的拆分
- 数据结构实验之链表五:单链表的拆分
- 数据结构实验之链表五:单链表的拆分
- 数据结构实验之链表五:单链表的拆分
- 数据结构实验之链表五:单链表的拆分
- 数据结构实验之链表五:单链表的拆分
- 数据结构实验之链表五:单链表的拆分
- 数据结构实验之链表五:单链表的拆分
- 数据结构实验之链表五:单链表的拆分
- 数据结构实验之链表五:单链表的拆分
- 数据结构实验之链表五:单链表的拆分
- 数据结构实验之链表五:单链表的拆分
- 数据结构实验之链表五:单链表的拆分
- 打开文件,写入数据(文件操作)
- eclipse之在线安装svn
- 剑指Offer面试题36(Java版):数组中的逆序对
- QtQuick 技巧 4
- Linux下编写程序必要工具使用详解
- sdut oj数据结构实验之链表五:单链表的拆分
- notes of Charlotte's Web Chapter 1
- ie浏览器flash player不能用的解决方案
- 新的开始 -- 2016年10月08日
- iOS开发陷阱之NSString - compare
- jQuery.unbind()
- 第61篇Chrome扩展蓝牙开发(一)
- android开发笔记之adb shell dumpsys
- Core Services 层