博客
关于我
剑指 Offer 06. 从尾到头打印链表 (简单)【栈】
阅读量:273 次
发布时间: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/

你可能感兴趣的文章
NO.23 ZenTaoPHP目录结构
查看>>
no1
查看>>
NO32 网络层次及OSI7层模型--TCP三次握手四次断开--子网划分
查看>>
NoClassDefFoundError: org/springframework/boot/context/properties/ConfigurationBeanFactoryMetadata
查看>>
Node JS: < 一> 初识Node JS
查看>>
Node Sass does not yet support your current environment: Windows 64-bit with Unsupported runtime(72)
查看>>
Node-RED中使用JSON数据建立web网站
查看>>
Node-RED中使用json节点解析JSON数据
查看>>
Node-RED中使用node-random节点来实现随机数在折线图中显示
查看>>
Node-RED中使用node-red-browser-utils节点实现选择Windows操作系统中的文件并实现图片预览
查看>>
Node-RED中使用node-red-contrib-image-output节点实现图片预览
查看>>
Node-RED中使用node-red-node-ui-iframe节点实现内嵌iframe访问其他网站的效果
查看>>
Node-RED中使用Notification元件显示警告讯息框(温度过高提示)
查看>>
Node-RED中实现HTML表单提交和获取提交的内容
查看>>
Node-RED中通过node-red-ui-webcam节点实现访问摄像头并截取照片预览
查看>>
node-request模块
查看>>
Node.js 8 中的 util.promisify的详解
查看>>
Node.js 函数是什么样的?
查看>>
Node.js 历史
查看>>
Node.js 在个推的微服务实践:基于容器的一站式命令行工具链
查看>>