从尾到头打印链表
来源:互联网 发布:长沙网络公关 编辑:程序博客网 时间:2024/04/29 16:50
- 题目描述:
输入一个链表,从尾到头打印链表每个节点的值。
- 输入:
每个输入文件仅包含一组测试样例。
每一组测试案例包含多行,每行一个大于0的整数,代表一个链表的节点。第一行是链表第一个节点的值,依次类推。当输入到-1时代表链表输入完毕。-1本身不属于链表。
- 输出:
对应每个测试案例,以从尾到头的顺序输出链表每个节点的值,每个值占一行。
- 样例输入:
12345-1
- 样例输出:
54321
AC 代码
#include <iostream>#include <stdlib.h>#include <stdio.h>#include <string.h>#define max_size 1000000using namespace std;struct node{ int value; node * next; node *tail;}; //直接采用书中,遍历建表会超时。 为了简单, 添加tail ,但是浪费了空间bool addToTail(struct node **phead, int value){ if(phead==NULL) return false; struct node *pNew = new struct node; struct node *tail; pNew->value = value; pNew->next = NULL; if(*phead==NULL) {*phead = pNew; (*phead)->tail = pNew;} else { tail = (*phead)->tail; tail->next = pNew; (*phead)->tail = pNew; } return true;}void reverOut(struct node *head){ if(head==NULL) return; else reverOut(head->next); printf("%d\n", head->value);}int main( ){ int value; struct node *head = NULL; while(1) { scanf("%d", &value); if(value==-1) break; if(!addToTail(&head, value)) break; } reverOut(head); return 0 ;}
0 0
- 从尾到头打印链表
- 从尾到头打印链表
- 从尾到头打印链表
- 从尾到头打印链表
- 1、从尾到头打印链表
- 从尾到头打印链表
- 从尾到头打印链表
- 【20】从尾到头打印链表
- 从尾到头打印链表
- 从尾到头打印链表
- 从尾到头打印链表
- 从尾到头打印链表
- 从尾到头打印链表
- 从尾到头打印链表
- Offer5 从尾到头打印链表
- 从尾到头打印链表
- 1、从尾到头打印链表
- 从尾到头打印链表
- 开发,从需求出发 · 之四 春天在这里
- c#调用Windows API函数的方法
- Sierra: A SIMD Extension for C++
- Consuming RESTful APIs
- Variables become undefined after page reloading
- 从尾到头打印链表
- 【OpenCV入门指南】第十一篇 鼠标绘图
- 2014新生暑假个人排位赛01 A. 学姐的桌面
- Windows系统CPU内存网络性能统计第一篇 内存
- A POJ1611
- 【白话经典算法系列之十三】随机生成和为S的N个正整数——投影法
- 2014新生暑假个人排位赛01 B. 学姐去学车
- HDU 2014 青年歌手大奖赛_评委会打分
- android 设置系统屏幕亮度