博客
关于我
剑指 Offer 06. 从尾到头打印链表 (简单)【栈】
阅读量:274 次
发布时间:2019-03-01

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

题目:

给定一个单向链表,要求反转链表中的节点顺序,并将反转后的节点值依次输出。

代码解析:

```cpp class Solution { vector
reversePrint(ListNode* head) { stack
s; vector
ans; while (head != NULL) { s.push(head->val); head = head->next; } while (s.size()) { ans.push_back(s.top()); s.pop(); } return ans; } }; ```

解决思路:

1. 使用栈数据结构来辅助实现反转过程。 2. 遍历原始链表,将节点的值依次压入栈中。 3. 然后从栈顶依次弹出元素,将其添加到结果集合中。 4. 最后,返回反转后的节点值集合。

代码实现:

- 首先,定义一个栈`stack
`和一个结果集合`vector
ans`。 - 使用循环遍历链表,将每个节点的值压入栈中。 - 当链表遍历完成后,逐个弹出栈顶元素,将其添加到结果集合中。 - 最终,返回结果集合即可。

运行结果:

假设输入链表为:1 → 2 → 3 → 4 反转后结果为:4 → 3 → 2 → 1

转载地址:http://alao.baihongyu.com/

你可能感兴趣的文章
Prometheus实战教程:监控mysql数据库
查看>>
Prometheus实战教程:监控Nginx状态
查看>>
prometheus常用exporter下载地址大全
查看>>
Prometheus快速搭建与监控Linux系统实战
查看>>
prometheus报警与恢复告警的格式
查看>>
Pytorch中安装 torch_geometric 详细图文操作(全)
查看>>
prometheus监控docker容器实战
查看>>
Prometheus监控k8s集群使用邮箱和微信告警!
查看>>
Prometheus监控mysq数据库实战
查看>>
prometheus监控nginx实战
查看>>
Prometheus监控redis数据库实战
查看>>
Prometheus监控教程:使用Grafana展示主机基本信息
查看>>
pytorch中如何使用预训练词向量
查看>>
Prometheus监控教程:使用PromQL查询监控数据(上篇)
查看>>
Prometheus监控教程:使用PromQL查询监控数据(下篇)
查看>>
Pytorch中关于forward函数的理解与用法
查看>>
Prometheus监控教程:安装部署
查看>>
Prometheus监控教程:配置介绍
查看>>
Pytorch中tqdm进度条的使用
查看>>
Prometheus(2):SpringBoot 2.X集成Prometheus
查看>>