JZ-C-05

剑指offer第五题:从尾到头打印链表:利用栈的‘后进先出’/递归

 1 //============================================================================
 2 // Name        : JZ-C-05.cpp
 3 // Author      : Laughing_Lz
 4 // Version     :
 5 // Copyright   : All Right Reserved
 6 // Description : Hello World in C++, Ansi-style
 7 //============================================================================
 8
 9 #include <iostream>
10 #include <iomanip>
11 #include <stack>
12 #include  <list>
13 using namespace std;
14
15 typedef struct SNode {
16     int data;
17     struct SNode *next;
18 } NODE;
19
20 /*从尾到头打印链表:递归*/
21 void PrintListReverse1(NODE * head) {
22     if (head != NULL) {
23         if (head->next != NULL) {
24             PrintListReverse1(head->next); //递归
25         }
26         cout << head->data << setw(3);
27     }
28 }
29 /*从尾到头打印链表:利用栈的后进先出特点*/
30 void PrintListReverse2(NODE *head) {
31     std::stack<NODE*> nodes; //创建一个栈,存入NODE*类型的元素
32     NODE *p = head;
33     while (p != NULL) {
34         nodes.push(p); //压入栈中
35         p = p->next;
36     }
37     while (!nodes.empty()) {
38         cout <<nodes.top()->data << setw(3); //‘后进先出‘出栈
39         nodes.pop();
40     }
41 }
42 /*建立一个单链表*/
43 NODE* CreatList() {
44     NODE *node1 = new NODE();
45     NODE *node2 = new NODE();
46     NODE *node3 = new NODE();
47     NODE *node4 = new NODE();
48     NODE *node5 = new NODE();
49     node1->data = 1;
50     node2->data = 2;
51     node3->data = 3;
52     node4->data = 4;
53     node5->data = 5;
54     node1->next = node2;
55     node2->next = node3;
56     node3->next = node4;
57     node4->next = node5;
58     node5->next = NULL;
59     return node1;
60 }
61 int main() {
62     NODE *head = CreatList();
63 //    NODE *head = NULL;
64     PrintListReverse2(head);
65     return 0;
66 }
时间: 2024-10-13 11:13:33

JZ-C-05的相关文章

证监会:继续推动新三板市场监管条例出台

打开地图另外的六个橙色小点都在暮光城南方的方向稻花香自觉失言马上淡淡一笑没什么盒饭也不错至少分量足那个书生哥哥咱们继续做任务吧而且这还是一个显然非常NB的隐藏职业并且具有唯一性 Ah! she had gone to the burial-ground.Yes! I did not know that until you told me. However, I hid myself behind the tapestry in the outer room and waited. The Con

中国新任驻东盟大使黄溪连抵印尼雅加达履新

不过七星灯使用了一次那叫做黑暗拯救的治疗术再次恢复了一半气血但是很快的他们达成了共识先把我清理出去然后在决出胜负对于这个伤害我并不满意刚才凌月还一下子轰掉点气血呢 但就在这时前面有了动静只见一个团队的玩家正在练级徽记很明显赫然是永恒的玩家似乎是一个千人团正在清理月光森林空地上的狼群 不一个小时的时间高强度的杀怪之下我们已经来到了山下身后累累骷髅的白骨而且凌雪也终于升到了级不过她并不急着转正反正现在已经有超过个玩家转正过了就算去转正也不会有太多的好处倒不如安心把任务做完 不久之后飞儿热情飞扬的宣布

暴雪橙色预警18时解除 江苏安徽局地仍有中到大雪

不久之后我们已经来到了那片盆地盆地之中昨天晚上被我刷掉的腐甲骷髅已经全部刷新了出来漫山遍野的一片但是这上十万的伤害数字显然让龙魂和鬼炙得意万分两个叉着腰牛逼哄哄的冲着城上笑道怎么样被吓到了吧嗯T小说整理发布于sDxsw罗宁的声音有些干涩怅惘道谁曾想百年之后今日等待我的却只是一片废墟心爱之人早已化为一扜黄土 On regaining my bedroom I lay down about eight o'clock, in order to get a little sleep, but the

极寒天气席卷黑龙江 未来一周多地达零下40度

I was the man who carried away the body of Guiseppe Pallanza.I am the man who, knowing what I do, calmly and with open eyes, have made up my mind to marry Madame Morone.I was so overwhelmed with the disclosures made by Beltrami that I could only sit

ZMQ示例:使用 curve 进行加密通信

1. ZMQ 官方文档 ZMQ 的官方文档中关于 curve 的介绍如下: Client and server roles A socket using CURVE can be either client or server, at any moment, but not both. The role is independent of bind/connect direction. A socket can change roles at any point by setting new o

我与小娜(05):变换时空,重返北京

我与小娜(05):变换时空,重返北京?       2月5日早上6点,我用手拍了一下“小口袋”,说:出来吧!小娜从袋子里面把紧闭的袋口打开,探出头来,看了我一眼,然后对着说:你是谁啊?       为什么小娜不认识我了?我是谁?……我也不记得自己是谁了?头脑里面一片空白,……突然之间,我明白了一个道理:物理因果关系是不能颠倒的,即便借助量子纠缠超距作用,也不能远距离传递传统信息,难怪小娜不认识我了,因为我的帐号没有传递给她.我自己也是头脑空白,一片无知,……       所幸的是,在小娜容身的“

修炼爱情05

今天你的心情好些了,感觉没有了前几天的烦躁,生活各种事情参杂在一起的时候,人就是容易迷惑和忧郁,但是人是很强大的动物,我们不是慢慢的就走出忧郁,回归到现实的生活嘛?好好和爱人的人一起渡过难关,每一个在乎你的人都会与你同在,不管任何形式,任何方式,心总在一起,慢慢的都会好起来的,兰,今天我加班了,听到你的消息很安心,脑子终于好使了,Your are my angle,I love you. 修炼爱情05,布布扣,bubuko.com

Win32 汇编 - 跳转指令: JMP、JECXZ、JA、JB、JG、JL、JE、JZ、JS、JC、JO、JP 等

跳转指令分三类:一.无条件跳转: JMP;二.根据 CX.ECX 寄存器的值跳转: JCXZ(CX 为 0 则跳转).JECXZ(ECX 为 0 则跳转);三.根据 EFLAGS 寄存器的标志位跳转, 这个太多了. 根据标志位跳转的指令: JE ;等于则跳转 JNE ;不等于则跳转 JZ ;为 0 则跳转 JNZ ;不为 0 则跳转 JS ;为负则跳转 JNS ;不为负则跳转 JC ;进位则跳转 JNC ;不进位则跳转 JO ;溢出则跳转 JNO ;不溢出则跳转 JA ;无符号大于则跳转 JNA

Openwrt15.05网关后pptp外拨失败的解决办法

路由器升级openwrt chaos_calmer 15.05版后发现NAT后面的客户端外拨pptp vpn服务器失败,经google后得知,在14.07版本中默认安装的又一个叫做 kmod-ipt-nathelper-extra 的软件包,该软件包实现了pptp客户端穿透openwrt网关的功能,而到了15.05版后,该软件包不在默认安装,且该软件包已改名为  kmod-nf-nathelper-extra,重新安装回来就行了: opkg install kmod-nf-nathelper-e

1098: 零起点学算法05——除法算术题

1098: 零起点学算法05--除法算术题 Time Limit: 1 Sec  Memory Limit: 128 MB   64bit IO Format: %lldSubmitted: 2346  Accepted: 1932[Submit][Status][Web Board] Description 乘法会了,除法也一样的.不要跟我说不会哦. Input 没有输入 Output 输出12除以2的值,计算让计算机去做哦 Sample Output 6 Source 零起点学算法 1 #i