【PTA】6-4 奇数值结点链表
题样
struct ListNode *readlist()
{struct ListNode * head=NULL;struct ListNode * p=NULL;struct ListNode * p2=NULL;while(1){p=(struct ListNode *)malloc(sizeof(struct ListNode ));scanf("%d",&p->data);if(p->data==-1)break;else{if(head==NULL){head=p;p2=p;}else{p2->next=p;p2=p;}}p2->next=NULL;}return head;
}
int isjishu(int a)
{return a%2;
}
int * jishu(struct ListNode * head)
{struct ListNode *p=head;static int arr[5000]={0};int i=0;while(p){if(isjishu(p->data )>0){arr[i++]=p->data ;}p=p->next ;} return arr;
}
int *shenyu(struct ListNode *head)
{static int arr2[5000]={0};int j=0;struct ListNode *p=head;while(p){if(isjishu(p->data)<=0){arr2[j++]=p->data; }p=p->next ;}return arr2;
}
struct ListNode *getodd( struct ListNode **L )
{struct ListNode * head1=NULL;struct ListNode *p=NULL;struct ListNode *p2=NULL;struct ListNode * head2=NULL;struct ListNode *p3=NULL;struct ListNode *p4=NULL;int * arr=jishu( *L);//存放奇数的数组 int i=0;//访问奇数数组 int *arr2=shenyu(*L);int j=0;while(arr[i]!=0){p=(struct ListNode *)malloc(sizeof(struct ListNode ));p->data =arr[i++];if(head1==NULL){head1=p;p2=p;}else{p2->next =p;p2=p;}}if(arr[0]!=0)p2->next =NULL;//奇数链表建立结束while(arr2[j]!=0){p3=(struct ListNode *)malloc(sizeof(struct ListNode ));p3->data =arr2[j++];if(head2==NULL){head2=p3;p4=p3;}else{p4->next =p3;p4=p3;}}if(arr2[0]!=0)p4->next =NULL;//第二条建立完毕free(*L);*L=head2;return head1;
}
//总结,先用简单思路,两个数组来做,别想太远把自己绕晕
【PTA】6-4 奇数值结点链表相关推荐
- PTA 奇数值结点链表 超详细
PTA 奇数值结点链表 本题要求实现两个函数,分别将读入的数据存储为单链表.将链表中奇数值的结点重新组成一个新的链表.链表结点定义如下: struct ListNode {int data;ListN ...
- 浙大大学 PTA 奇数值结点链表
6-5 奇数值结点链表 (20 point(s)) 本题要求实现两个函数,分别将读入的数据存储为单链表.将链表中奇数值的结点重新组成一个新的链表.链表结点定义如下: struct ListNode { ...
- 习题11-7 奇数值结点链表 (20 分) -链表
习题11-7 奇数值结点链表 (20 分) 本题要求实现两个函数,分别将读入的数据存储为单链表.将链表中奇数值的结点重新组成一个新的链表.链表结点定义如下: struct ListNode {int ...
- PTA-链表学习-----奇数值结点链表
奇数值结点链表 解法一 struct ListNode *readlist() {struct ListNode *head = NULL, *p;int data=0;while(scanf(&qu ...
- 奇数值结点链表(C语言实现)
习题11-7 奇数值结点链表(C语言实现) 分析:没有头结点的链表操作太麻烦了. ①注意第一个结点是奇数值结点的删除和其他结点的删除情况: ②注意奇数链表第一个结点的创建和后续结点的创建. #incl ...
- 6-5 奇数值结点链表 (20分)
6-5 奇数值结点链表 (20分)本题要求实现两个函数,分别将读入的数据存储为单链表.将链表中奇数值的结点重新组成一个新的链表.链表结点定义如下: struct ListNode {int data; ...
- 奇数值结点链表 (20 分)
本题要求实现两个函数,分别将读入的数据存储为单链表.将链表中奇数值的结点重新组成一个新的链表.链表结点定义如下: struct ListNode {int data;ListNode *next;}; ...
- c语言奇数值结点链表,习题11-7 奇数值结点链表 (20 分)
本题要求实现两个函数,分别将读入的数据存储为单链表.将链表中奇数值的结点重新组成一个新的链表.链表结点定义如下: struct ListNode { int data; ListNode *next; ...
- 实验11 链表 程序1奇数值结点链表
输入若干个正整数(输入-1为结束标志)建立一个单向链表,头指针为L,将链表L中奇数值的结点重新组成一个新的链表NEW,并输出新建链表的信息. 第一种方法:逆向思维 #include<stdio. ...
最新文章
- MySQL数据库job怎么写_数据库中job是什么意思
- 智能车竞赛技术报告 | 节能信标组组 - 内蒙古大学创业学院 - 骄阳一队
- 利用OpenCV的级联分类器类CascadeClassifier和Haar特征实现人脸区域的检测
- 大话数据结构 01 :顺序线性表
- mysql之对视图的操作
- 前端学习(1176):set数据结构2
- (SPFA+最短路变形+回路对起点的影响)Arbitrage
- hive 把mysql语句执行_R分别连接mysql hive执行操作
- idea代码补全_不想得手指关节炎?帮你提炼IDEA常用代码补全操作
- 最全Handler解读,持续补充...
- 入选 CVPR 2020的旷视论文,到底写了啥?
- Python中的三目运算符
- 中国互联网的那些事——二十年回顾
- Adobe Photoshop 2021哪会出,PS2021功能界面抢先看
- 软件测试自学网站有哪些?不妨一探究竟
- 像呼吸空气一样呼吸创意
- 010 面向对象编程
- c和cpp实现CPU核上绑定固定线程
- 利用python如何抓取微博评论?
- 指纹识别属于计算机技术,指纹识别技术主要涉及四个功能,是哪四个呢?
热门文章
- 学生Web开发人员练习:电影评论II
- python爬虫 批量下载高清大图
- 41家对中国市场依赖度最高(依营收占比计算)的美国公司
- TCP/IP协议栈 路由器 交换机
- python-华为路由器交换机批量处理ip与mac绑定
- 中大 华科 计算机学院,中国进步“最快”的13所大学,国科大、中大、电子科大、华科升级...
- 大数据和人工智能的关系,超全解析 1
- 蓝天保卫战之产品测试服务
- java生气_Java来抢饭碗,C++可别生气
- SSM框架实现不同用户登陆进入不同页面