题样

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 奇数值结点链表相关推荐

  1. PTA 奇数值结点链表 超详细

    PTA 奇数值结点链表 本题要求实现两个函数,分别将读入的数据存储为单链表.将链表中奇数值的结点重新组成一个新的链表.链表结点定义如下: struct ListNode {int data;ListN ...

  2. 浙大大学 PTA 奇数值结点链表

    6-5 奇数值结点链表 (20 point(s)) 本题要求实现两个函数,分别将读入的数据存储为单链表.将链表中奇数值的结点重新组成一个新的链表.链表结点定义如下: struct ListNode { ...

  3. 习题11-7 奇数值结点链表 (20 分) -链表

    习题11-7 奇数值结点链表 (20 分) 本题要求实现两个函数,分别将读入的数据存储为单链表.将链表中奇数值的结点重新组成一个新的链表.链表结点定义如下: struct ListNode {int ...

  4. PTA-链表学习-----奇数值结点链表

    奇数值结点链表 解法一 struct ListNode *readlist() {struct ListNode *head = NULL, *p;int data=0;while(scanf(&qu ...

  5. 奇数值结点链表(C语言实现)

    习题11-7 奇数值结点链表(C语言实现) 分析:没有头结点的链表操作太麻烦了. ①注意第一个结点是奇数值结点的删除和其他结点的删除情况: ②注意奇数链表第一个结点的创建和后续结点的创建. #incl ...

  6. 6-5 奇数值结点链表 (20分)

    6-5 奇数值结点链表 (20分)本题要求实现两个函数,分别将读入的数据存储为单链表.将链表中奇数值的结点重新组成一个新的链表.链表结点定义如下: struct ListNode {int data; ...

  7. 奇数值结点链表 (20 分)

    本题要求实现两个函数,分别将读入的数据存储为单链表.将链表中奇数值的结点重新组成一个新的链表.链表结点定义如下: struct ListNode {int data;ListNode *next;}; ...

  8. c语言奇数值结点链表,习题11-7 奇数值结点链表 (20 分)

    本题要求实现两个函数,分别将读入的数据存储为单链表.将链表中奇数值的结点重新组成一个新的链表.链表结点定义如下: struct ListNode { int data; ListNode *next; ...

  9. 实验11 链表 程序1奇数值结点链表

    输入若干个正整数(输入-1为结束标志)建立一个单向链表,头指针为L,将链表L中奇数值的结点重新组成一个新的链表NEW,并输出新建链表的信息. 第一种方法:逆向思维 #include<stdio. ...

最新文章

  1. MySQL数据库job怎么写_数据库中job是什么意思
  2. 智能车竞赛技术报告 | 节能信标组组 - 内蒙古大学创业学院 - 骄阳一队
  3. 利用OpenCV的级联分类器类CascadeClassifier和Haar特征实现人脸区域的检测
  4. 大话数据结构 01 :顺序线性表
  5. mysql之对视图的操作
  6. 前端学习(1176):set数据结构2
  7. (SPFA+最短路变形+回路对起点的影响)Arbitrage
  8. hive 把mysql语句执行_R分别连接mysql hive执行操作
  9. idea代码补全_不想得手指关节炎?帮你提炼IDEA常用代码补全操作
  10. 最全Handler解读,持续补充...
  11. 入选 CVPR 2020的旷视论文,到底写了啥?
  12. Python中的三目运算符
  13. 中国互联网的那些事——二十年回顾
  14. Adobe Photoshop 2021哪会出,PS2021功能界面抢先看
  15. 软件测试自学网站有哪些?不妨一探究竟
  16. 像呼吸空气一样呼吸创意
  17. 010 面向对象编程
  18. c和cpp实现CPU核上绑定固定线程
  19. 利用python如何抓取微博评论?
  20. 指纹识别属于计算机技术,指纹识别技术主要涉及四个功能,是哪四个呢?

热门文章

  1. 学生Web开发人员练习:电影评论II
  2. python爬虫 批量下载高清大图
  3. 41家对中国市场依赖度最高(依营收占比计算)的美国公司
  4. TCP/IP协议栈 路由器 交换机
  5. python-华为路由器交换机批量处理ip与mac绑定
  6. 中大 华科 计算机学院,中国进步“最快”的13所大学,国科大、中大、电子科大、华科升级...
  7. 大数据和人工智能的关系,超全解析 1
  8. 蓝天保卫战之产品测试服务
  9. java生气_Java来抢饭碗,C++可别生气
  10. SSM框架实现不同用户登陆进入不同页面