博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
九度oj题目1511:从尾到头打印链表
阅读量:4612 次
发布时间:2019-06-09

本文共 1617 字,大约阅读时间需要 5 分钟。

题目1511:从尾到头打印链表

时间限制:1 秒

内存限制:128 兆

特殊判题:

提交:6010

解决:1805

题目描述:

输入一个链表,从尾到头打印链表每个节点的值。

 

输入:

每个输入文件仅包含一组测试样例。

每一组测试案例包含多行,每行一个大于0的整数,代表一个链表的节点。第一行是链表第一个节点的值,依次类推。当输入到-1时代表链表输入完毕。-1本身不属于链表。

 

输出:

对应每个测试案例,以从尾到头的顺序输出链表每个节点的值,每个值占一行。

 

样例输入:
12345-1
样例输出:
54321

参考代码:

递归做法。

1 #include
2 #include
3 #include
4 #include
5 using namespace std; 6 typedef struct node{ 7 int val; 8 node *next; 9 }node;10 void print_link(const node *tmp_node){11 if(tmp_node->next!=NULL)12 print_link(tmp_node->next);13 printf("%d\n",tmp_node->val);14 }15 int main()16 {17 //freopen("D:\\INPUT.txt","r",stdin);18 int tmp;19 node *head=new node;20 head->next=NULL;21 node *pre_node=head;22 while(scanf("%d",&tmp)&&tmp>0){23 node *tmp_node=new node;24 tmp_node->val=tmp;25 tmp_node->next=NULL;26 27 pre_node->next=tmp_node;28 pre_node=tmp_node;29 }30 print_link(head->next);31 return 0;32 }

 

 

自己的代码:

1 #include
2 #include
3 #include
4 #include
5 using namespace std; 6 struct node{ 7 int v; 8 node *next; 9 };10 void print(node *p){11 if(p->next){
//attention!!12 print(p->next);13 }14 cout<
v<
next=NULL;22 node *p,*q=head;23 while(scanf("%d",&n)&&n!=-1){24 p=new node();25 p->v=n;26 p->next=NULL;27 q->next=p;28 q=p;29 }30 print(head->next);31 return 0;32 }

 

转载于:https://www.cnblogs.com/Deribs4/p/4649862.html

你可能感兴趣的文章
MySQL数据库免安装版配置
查看>>
你必知必会的SQL面试题
查看>>
html5 Canvas绘制时钟以及绘制运动的圆
查看>>
云推送注意(MSDN链接)
查看>>
OpenMobile's Application Compatibility Layer (ACL)
查看>>
竞价广告系统-广告检索
查看>>
Metro Style app :浏览器扩展
查看>>
linux的kernel是怎样工作的(TI_DM36X_ARM系统)(1)
查看>>
[luogu4310] 绝世好题 (递推)
查看>>
[luogu3203 HNOI2010] 弹飞绵羊 (分块)
查看>>
mui搜索框 搜索点击事件
查看>>
2016012003+陈琦+散列函数的应用及其安全性
查看>>
Android 状态栏通知Notification、NotificationManager详解
查看>>
UIApplicationDelegate协议
查看>>
Jmeter测试dubbo接口填坑
查看>>
[zz]GDB调试精粹及使用实例
查看>>
数据库的创建和删除
查看>>
最简单的三层实例【插入据
查看>>
设计模式学习笔记——Prototype原型模式
查看>>
pom.xml里有红叉报错的解决办法
查看>>