从尾到头打印链表
来源:互联网 发布:em算法 q函数 编辑:程序博客网 时间:2024/05/17 01:47
题目描述
输入一个链表,从尾到头打印链表每个节点的值。
思路二:(利用栈)
输入描述:
输入为链表的表头
输出描述:
输出为需要打印的“新链表”的表头
思路一:(利用链表的翻转,然后直接存储!!!)
/*** struct ListNode {* int val;* struct ListNode *next;* ListNode(int x) :* val(x), next(NULL) {* }* };*/class Solution {public: vector<int> printListFromTailToHead(struct ListNode* head) { vector<int> A; struct ListNode *s = NULL; struct ListNode *q = NULL; s = head; head = NULL; while(s != NULL) { q = s; s = s->next; q->next = head; head = q; } q = head; while(q != NULL) { A.push_back(q.val); q = q->next; } return A; }};
思路二:(利用栈)
/*** struct ListNode {* int val;* struct ListNode *next;* ListNode(int x) :* val(x), next(NULL) {* }* };*/class Solution {public: vector<int> printListFromTailToHead(struct ListNode* head) { vector<int> vector; stack<int> stack; struct ListNode *p = head; while(p != NULL) { stack.push(p->val); p = p->next; } while(!stack.empty()) { vector.push_back(stack.top()); stack.pop(); } return vector; }};其中借用:
vector<int> vector;stack<int> stack;<pre name="code" class="cpp">vector.push_back(stack.top());stack.pop();
0 0
- 从尾到头打印链表
- 从尾到头打印链表
- 从尾到头打印链表
- 从尾到头打印链表
- 1、从尾到头打印链表
- 从尾到头打印链表
- 从尾到头打印链表
- 【20】从尾到头打印链表
- 从尾到头打印链表
- 从尾到头打印链表
- 从尾到头打印链表
- 从尾到头打印链表
- 从尾到头打印链表
- 从尾到头打印链表
- Offer5 从尾到头打印链表
- 从尾到头打印链表
- 1、从尾到头打印链表
- 从尾到头打印链表
- 数据存储—读取Assets中的数据test
- 《新闻阅读器》总结”三“ ImageLoader
- Android Style理解
- Runnable和Callable的区别
- Spring利用MultipartFile接收FormData对象上传文件(可接收AJAX上传的包含多文件的复杂表单内容)
- 从尾到头打印链表
- ctype.h
- 数据存储-读取raw文件中的数据test
- GridControl添加操作列
- Yii2-使用ActiveRecord数据操作数据分页的记录重复问题
- ARCGis+Google map api 校园地理信息导航系统
- ABAP-在SMARTFORMS中取消使用WORD作为编辑器
- 数据存储—读写内部存储的文件数据
- 数据存储-读取外部数据