机试练习7.11
来源:互联网 发布:佛跳墙软件下载 编辑:程序博客网 时间:2024/06/06 03:29
输入一个链表,从尾到头打印链表每个节点的值。
两种方法:
方法1:利用堆栈
注意:使用stack时,要指明#include 和using namespace std;
而且STL的方法要牢记!!stack有empty() top() pop() push();vector有at() [] push_back() pop_back()等
/*** struct ListNode {* int val;* struct ListNode *next;* ListNode(int x) :* val(x), next(NULL) {* }* };*/#include <stack>#include <iostream>using namespace std;class Solution {public: vector<int> printListFromTailToHead(ListNode* head) { ListNode * p=head; vector<int> v; stack<int> s; while(p!=NULL) { s.push(p->val); p=p->next; } while(!s.empty()) { int val=s.top(); s.pop(); v.push_back(val); } return v; }};
方法2:递归(小白就没有想到!!)
/**
* struct ListNode {
* int val;
* struct ListNode *next;
* ListNode(int x) :
* val(x), next(NULL) {
* }
* };
*/
class Solution {
public:
vector printListFromTailToHead(ListNode* head) {
vector v;
if(head==NULL)
return v;
else
{
v=printListFromTailToHead(head->next);
v.push_back(head->val);
}
return v;
}
};
阅读全文
0 0
- 机试练习7.11
- 机试练习7.11
- 机试练习7.11
- 机试练习7.11
- 机试练习7.11
- 机试练习
- 机试练习HW
- 华为机试练习2
- 华为机试准备--练习(JAVA实现)
- 华为机试练习---划分数线
- 华为机试练习---求最小差值
- 华为机试练习---括号匹配问题
- 2015华为机试练习之合唱队
- ATM机 练习
- 机考练习
- 练习
- “++”“--”练习
- 练习
- JAVA反射机制
- 堆排序原理及代码实现
- 守望者的逃离 洛谷p1095
- 程序员们,AI来了,机会来了,危机也来了
- 生命虹流——血液的翻云覆雨”
- 机试练习7.11
- POJ 1655
- android_系统广播大全
- 构造函数重载
- HYSBZ/BZOJ2301 problem b
- hadhoop入门
- 初入C++(二)类和对象,构造函数,析构函数
- numpy 学习3
- Android6.0 读写SD卡权限动态申请