数据结构实验值链表五:单链表的拆分
来源:互联网 发布:淘宝买药流程 提交需求 编辑:程序博客网 时间:2024/06/11 02:37
<h2 style="padding: 0px; margin: 10px 0px 7px; font-family: 微软雅黑, 'Trebuchet MS', Helvetica, Arial, Geneva, sans-serif; font-weight: normal; color: rgb(124, 169, 237); font-size: 20px; line-height: 24px;">题目描述</h2><div class="pro_desc" style="padding: 0px; margin: 0px; color: rgb(51, 51, 51); font-family: 微软雅黑, 黑体, 宋体, Verdana, Helvetica, Arial, Geneva, sans-serif; line-height: 18px;">输入N个整数顺序建立一个单链表,将该单链表拆分成两个子链表,第一个子链表存放了所有的偶数,第二个子链表存放了所有的奇数。两个子链表中数据的相对次序与原链表一致。</div><h2 style="padding: 0px; margin: 10px 0px 7px; font-family: 微软雅黑, 'Trebuchet MS', Helvetica, Arial, Geneva, sans-serif; font-weight: normal; color: rgb(124, 169, 237); font-size: 20px; line-height: 24px;">输入</h2><div class="pro_desc" style="padding: 0px; margin: 0px; color: rgb(51, 51, 51); font-family: 微软雅黑, 黑体, 宋体, Verdana, Helvetica, Arial, Geneva, sans-serif; line-height: 18px;">第一行输入整数N;;<br style="padding: 0px; margin: 0px;" />第二行依次输入N个整数。</div><h2 style="padding: 0px; margin: 10px 0px 7px; font-family: 微软雅黑, 'Trebuchet MS', Helvetica, Arial, Geneva, sans-serif; font-weight: normal; color: rgb(124, 169, 237); font-size: 20px; line-height: 24px;">输出</h2><div class="pro_desc" style="padding: 0px; margin: 0px; color: rgb(51, 51, 51); font-family: 微软雅黑, 黑体, 宋体, Verdana, Helvetica, Arial, Geneva, sans-serif; line-height: 18px;">第一行分别输出偶数链表与奇数链表的元素个数; <br style="padding: 0px; margin: 0px;" />第二行依次输出偶数子链表的所有数据;<br style="padding: 0px; margin: 0px;" />第三行依次输出奇数子链表的所有数据。</div><h2 style="padding: 0px; margin: 10px 0px 7px; font-family: 微软雅黑, 'Trebuchet MS', Helvetica, Arial, Geneva, sans-serif; font-weight: normal; color: rgb(124, 169, 237); font-size: 20px; line-height: 24px;">示例输入</h2><div class="data" style="padding: 0px; margin: 0px; font-family: 'Courier New', Courier, monospace; font-size: 16px; white-space: pre; line-height: 20px; border: 1px solid rgb(173, 173, 173); color: rgb(51, 51, 51); background-color: rgb(224, 224, 224);"><pre style="padding: 0px; margin-top: 0px; margin-bottom: 0px;">101 3 22 8 15 999 9 44 6 1001
示例输出
4 622 8 44 6 1 3 15 999 9 1001
#include<stdio.h>#include<stdlib.h>struct node{ int data; struct node *next;};int main(){ int n; struct node * head1, *head, *p, *q,*tail,*tail1; scanf("%d",&n); head=(struct node *)malloc(sizeof(struct node)); head->next=NULL; tail=head; for(int i=0;i<n;i++) { p=(struct node *)malloc(sizeof(struct node)); p->next=NULL; scanf("%d",&p->data); tail->next=p; tail=p; } p=head->next; int a=0, b=0; head1=(struct node *)malloc(sizeof(struct node)); head1->next=NULL; tail1=head1; tail=head; q=p->next; while(p!=NULL) { if(p->data%2==0) { p->next=NULL; tail->next=p; tail=p; a++; } else { p->next=NULL; tail1->next=p; tail1=p; b++; } p=q; if(q!=NULL) q=q->next; } printf("%d %d\n",a,b); p=head->next; while(p!=NULL) { if(p->next==NULL) printf("%d\n",p->data); else printf("%d ",p->data); p=p->next; } q=head1->next; while(q!=NULL) { if(q->next==NULL) printf("%d\n",q->data); else printf("%d ",q->data); q=q->next; } return 0;}
0 0
- 数据结构实验值链表五:单链表的拆分
- 数据结构实验之链表五:单链表的拆分
- 数据结构实验之链表五:单链表的拆分
- 数据结构实验之链表五:单链表的拆分
- 数据结构实验之链表五:单链表的拆分
- 数据结构实验之链表五:单链表的拆分
- 数据结构实验之链表五:单链表的拆分
- 数据结构实验之链表五:单链表的拆分
- 数据结构实验之链表五:单链表的拆分
- 数据结构实验之链表五:单链表的拆分
- 数据结构实验之链表五:单链表的拆分
- 数据结构实验之链表五:单链表的拆分
- 数据结构实验之链表五:单链表的拆分
- 数据结构实验之链表五:单链表的拆分
- 数据结构实验之链表五:单链表的拆分
- 数据结构实验之链表五:单链表的拆分
- 数据结构实验之链表五:单链表的拆分
- 数据结构实验之链表五:单链表的拆分
- redis消息订阅和发布实例
- 机器学习-梯度下降算法-特征缩放和学习速率选取
- 3.搜索之路——solr
- Persistent and Transient Data Structures in Clojure
- nyoj 17 最长子序列相关问题
- 数据结构实验值链表五:单链表的拆分
- 图解Linux命令之--which命令
- caffe中各个层——解析
- 二进制小数
- 初识okHttp
- 跟我一起写Makefile(3)--- make如何工作+makefile使用变量
- poj 1035 Spell checker
- POJ 1261 Period KMP 周期-循环
- windows开发php扩展