由买买提看人间百态

topics

全部话题 - 话题: postorder
1 2 3 4 下页 末页 (共4页)
g***j
发帖数: 1275
1
我这个全部通过了,多半是index的问题
class Solution {
public:
TreeNode *buildTree(vector &inorder, vector &postorder) {
// Start typing your C/C++ solution below
// DO NOT write int main() function
if(inorder.size() != postorder.size() ||
inorder.size() == 0 || postorder.size() == 0)
return NULL;

return buildTreeHelper(inorder, 0, inorder.size() - 1,
postorder, 0, postorder.size() - 1);
}

Tree... 阅读全帖
t****n
发帖数: 19
2
死活runtime error啊,在本地调试是可以的啊...囧了,有点怀疑是不是leetcode的问
题了..
Last executed input
[2,1], [2,1]
下面这个实现有什么问题么
public class Solution {
public TreeNode buildTree(int[] inorder, int[] postorder) {
if(inorder.length != postorder.length
|| inorder.length==0){
return null;
}
int rootVal = postorder[postorder.length-1];
int inorderRootPos = Arrays.binarySearch(inorder, rootVal);

TreeNode rootNode = new TreeNode(rootVal);
rootNo... 阅读全帖
t****n
发帖数: 19
3
死活runtime error啊,在本地调试是可以的啊...囧了,有点怀疑是不是leetcode的问
题了..
Last executed input
[2,1], [2,1]
下面这个实现有什么问题么
public class Solution {
public TreeNode buildTree(int[] inorder, int[] postorder) {
if(inorder.length != postorder.length
|| inorder.length==0){
return null;
}
int rootVal = postorder[postorder.length-1];
int inorderRootPos = Arrays.binarySearch(inorder, rootVal);

TreeNode rootNode = new TreeNode(rootVal);
rootNo... 阅读全帖
i***e
发帖数: 452
4
我都试过你的code, 可以过的啊。
给你贴个我写的吧 :
TreeNode* help(vector& inorder, int startIndex, int n, vector&
postorder, int start2)
{
if(n < 1) return NULL;
TreeNode* root = new TreeNode(postorder[start2+n-1]);
if(n == 1) return root;
int index = startIndex;
for(;;index++)
if(inorder[index] == root->val)
break;
int l = index - startIndex;
root->left = help(inorder, startIndex, l, postorder,start2);
root->ri... 阅读全帖
j******2
发帖数: 362
5
用跟preorder+inorder construct tree类似的方法,死活过不了大的test,高手给指
点指点?
TreeNode *build(vector in, vector post, int in_start, int in_end,
int & post_index)
{
if(in_start>in_end)
{
return NULL;
}
TreeNode *r=new TreeNode(post[post_index--]);
if(in_start==in_end)
{
return r;
}
int in_index=search(in, in_start, in_end, r->val);
r->right=build(in, post, in_index+1, in_end, post_index);
r->left=... 阅读全帖
u*****o
发帖数: 1224
6
没错,postorder 是要往下走还是往回走需要判断,所以比其他两个难。。
s*****r
发帖数: 773
a***e
发帖数: 413
8
牛。多谢!
但是我看了那个blog写的preorder和inorder OJ里面就是通不过,Inorder的弄到VS里
面debug半天,还是不知道哪里有问题,
Last executed input:
{1,2}
在VS里面能通过,不知道怎么回事。如果要问postorder Morris就简直太无语了,各位
有在面试中碰到的么?
vector inorderTraversal(TreeNode *root) {
vector ret;
TreeNode *r = root;
TreeNode *prev=NULL;
while(r!=NULL)
{
if(r->left==NULL)
{
ret.push_back(r->val);
r=r->right;
}
else
{
//find prede... 阅读全帖
a***e
发帖数: 413
9
如果要问postorder Morris就简直太无语了,各位有在面试中碰到的么?
而且这些东西感觉得面试前突击,不然久了不用容易忘吧?LC刷好几次的大牛们是不是
为这个目的?
我还一半都没刷完,sigh。
f********a
发帖数: 165
10
class Solution:
# @param inorder, a list of integers
# @param postorder, a list of integers
# @return a tree node
def buildTree(self, inorder, postorder):
n = len(inorder)
if n == 0:
return None
elif n == 1:
return TreeNode(postorder[-1])
else:
root = TreeNode(postorder[-1])
mid_inorder = inorder.index(postorder[-1])
root.left = self.buildTree(inorder[:mid_inorder], postorder[:mid
_inorder... 阅读全帖
h********s
发帖数: 66
11
来自主题: JobHunting版 - 讨论一道leetcode上面的题
Given inorder and postorder traversal of a tree, construct the binary tree.
觉得并不难,但是online judge之后,judge small能通过,judge large不通过,报
Runtime Error。下面是我的代码,高人能否分析下问题出在哪儿了。
public static TreeNode buildTree(int[] inorder, int[] postorder) {
// Start typing your Java solution below
// DO NOT write main() function
if(inorder.length==0 && postorder.length==0) return null;
int n = inorder.length;
int root_val = postorder[n-1];
TreeNode root = new TreeNode(r... 阅读全帖
c**y
发帖数: 172
12
问题简单概述:Binary Tree T1(大)和T2(小),判断T2是不是T1的substree。
CC150给的解法是对于每一个Tree,用InOrder和PreOrder的方法生成两个序列,然后判
断T2的两个序列是不是T1两个序列的substring。CC150还有brutal force的解法(这里
就不讨论了)。
我的问题是
1.这个序列比较的解法要求T1和T2不能有duplicate元素?这个应该是确定的,参见
http://www.geeksforgeeks.org/check-if-a-binary-tree-is-subtree-
2.为什么不比较PostOrder生成的序列呢?下面是一个反例(如果只用PreOrder和
InOrder
,返回True,但是实际应该是False)
T1:
1
/ \
2 3
\
4
T2:
1
/ \
2 3
T1:
InOrder: 2134
PreOrder: 1234
T2:
InOrder: 213
PreOrder: 123
如果只用InOrder和... 阅读全帖
x*****0
发帖数: 452
13
class Solution {
private:
TreeNode *pre;
public:
Solution() : pre(NULL) {}
void flatten(TreeNode *root) {
// Start typing your C/C++ solution below
// DO NOT write int main() function
//static TreeNode* pre = NULL;
if (root != NULL) {
flatten(root->right);
flatten(root->left);
root->right = pre;
root->left = NULL;
pre = root;
}
}
};
各位帮我看看这段代码有什么问题?我自己测试leetcode给出的数据,没有问题。但是
就是过不了。
如果改... 阅读全帖
c*********t
发帖数: 2921
14
来自主题: JobHunting版 - 问几个有关Binary tree的题
1. 如何用iterative 的方法实现postorder遍历binary tree?
recursive的方法太简单了。
好像inorder, preorder的iterative比较容易用stack就行了。可是postorder,我想不
出好的方法。谁能给个pseudo code?
2. 给定postorder 和 inorder遍历的结果,想个算法还原出binary tree.
3. 给定preorder 和 inorder遍历的结果,想个算法还原出binary tree.
我有三个包子,谁给回答对,就发包子给谁,一个包子一题。
给出pseudo code就行了。
谢谢!
c**y
发帖数: 172
15
多谢回复。迪迪的帖子证明了即便inorder,preorder,和postorder都用也是不行的。
关于如果允许使用特殊字符的话,好像只要一个就可以了,either inorder, preorder
或者postorder都可以。通过使用特殊字符,一个binary tree的信息可以被一个序列完
全复制和恢复。因此只要一个序列就可以了。例如
2
/ \
1 3
Inorder: (1)2(3)
Preorder: 21()3()
Postorder: ()1()32
多谢各位
b*****n
发帖数: 618
16
来自主题: JobHunting版 - RF 面经
姑且称为RF吧
申请的是fresh grad职位,2月底第一次跟hr联系到这个周拿到offer,中间经历了
online code test,onsite和一次电面。
好像不少人对他家的code test比较感兴趣,4个小时两道题,每个人遇到的题目可能不
一样,
第一题很简单,主要考察code质量,第二题稍微难一点,每个题目的要求都很详细要仔
细看,还有详细的提示也要注意。
我遇到的题:
1. 一个矩阵,从指定格子向右发射激光,每个格子有以下几种可能:激光直接穿过,
或者改变激光方向(4个方向)
问激光射出矩阵之前一共经过了多少格子,如果死循环了就输出-1
2. 一堆racer,每个racer有出发时间和到达时间,计算每个racer的score,规则如下
:score = 所有出发比自己晚但是到达比自己早的racer数量之和,(所有的出发时间
和到达时间没有重复的)要求时间复杂度 code test过了之后我直接就安排onsite了,onsite本来安排6个人但实际上只面了5个
,题目如下:
1. 两个不一样长度的sorted array,求median。
leetcod... 阅读全帖
b*****n
发帖数: 618
17
来自主题: JobHunting版 - RF 面经
姑且称为RF吧
申请的是fresh grad职位,2月底第一次跟hr联系到这个周拿到offer,中间经历了
online code test,onsite和一次电面。
好像不少人对他家的code test比较感兴趣,4个小时两道题,每个人遇到的题目可能不
一样,
第一题很简单,主要考察code质量,第二题稍微难一点,每个题目的要求都很详细要仔
细看,还有详细的提示也要注意。
我遇到的题:
1. 一个矩阵,从指定格子向右发射激光,每个格子有以下几种可能:激光直接穿过,
或者改变激光方向(4个方向)
问激光射出矩阵之前一共经过了多少格子,如果死循环了就输出-1
2. 一堆racer,每个racer有出发时间和到达时间,计算每个racer的score,规则如下
:score = 所有出发比自己晚但是到达比自己早的racer数量之和,(所有的出发时间
和到达时间没有重复的)要求时间复杂度 code test过了之后我直接就安排onsite了,onsite本来安排6个人但实际上只面了5个
,题目如下:
1. 两个不一样长度的sorted array,求median。
leetcod... 阅读全帖
g*******y
发帖数: 1930
18
来自主题: JobHunting版 - 问几个有关Binary tree的题
才三个包子。。。
我以前贴过用stack实现postorder的code
你搜一下呢
重建树的时候,postorder数组的最后一个是根,在inorder数组中搜索到这个根,
inorder数组中左边的就是左子树的集合,右边就是又子树。
两边子树的集合就确定下来了。递归的建立左子树,柚子树,再跟当前的根连接起来就
行了。
i**********e
发帖数: 1145
19
来自主题: JobHunting版 - 报google nyc offer,并分享面经
应该是直接看图然后写出preorder,postorder and inorder的打印顺序。
如果要写出这三个非递归的代码有些残忍。
postorder 非递归不容易写(it is non-trivial)。
yingying1987:
非常谢谢你的分享,这些信息对我们都非常非常有用!在此感激不尽!恭喜你,you
deserve it!
狂赞 LZ 不放弃的态度:
小女子先后被ms, amazon,
vmware, nvidia, zynga, sig拒过,但从没放弃过。一定要从失败中获得教训,总结经
验,多来版上瞧瞧,胜利就在不远的前方。
一些常见面试题的答案与总结 -
http://www.ihas1337code.com
f***z
发帖数: 65
20
来自主题: JobHunting版 - 请教一道面试题,关于tree的
Given:
Binary operators: +, *
Operands: postive integers
Tree1: *
|
-----
| |
+ 3
|
---
| |
1 2
First Array Representation Example:
PreOrder: * + 1 2 3
PostOrder: 1 2 + 3 *
输入一个preorder字符串,有运算符和数字,输出postorder.
请问如何实现?
i**********e
发帖数: 1145
21
这题主要考察重建 general tree,不是 binary tree。然后就是怎么把 general tree
用 binary tree 来表示。
还有要注意给的是 preorder 和 postorder.在 binary tree 里 preorder 和
postorder 是不可能重建树的。
不过我认为这题作为面实题,给不到你对 candidate 很有用的signal。个人意见。
i**********e
发帖数: 1145
22
不好意思,可能破坏你这道面试题了。
假设定义为 general tree 的 postorder traversal 是遍历完current node的所有
children再遍历currentnode。
那么主要的trick是要发现 general tree (GT) 的 preorder 跟 binary tree
representation (BTR) 的 preorder 是一样的。另外,GT 的 postorder 和 BTR 的
inorder 遍历也是一样的。
所以重建树就成为了 BTR 的 preorder 和 inorder.
所以这题主要就利用经典的 preorder 和 inorder 遍历重建二叉树,然后再把 BTR 转化成 GT,不知道说对了没有?
http://www.cs.rutgers.edu/~kaplan/503/handouts/btreconNgentrees
p*****2
发帖数: 21240
23
postorder?
def postorder(root):
f=0
n=root
while n!=None:
if f==2:
print n.val
if n.parent!=None and n==n.parent.left:
f=1
n=n.parent
elif f==1:
if n.right!=None:
f=0
n=n.right
else:
f=2
else:
if n.left!=None:
n=n.left
else:
f=1
K*********n
发帖数: 2852
24
来自主题: JobHunting版 - Amazon 电面
实践一下或者搜一下代码就知道了,很别扭,细节很繁复,考虑需要特别周全。不像re
cursive版,三种order颠倒一下顺序就行了。
非recuesive版本,按照实现难度从易到难是preorder, inorder, postorder。
preorder随便写,inorder要仔细琢磨。如果面试碰到写postorder,我这水平基本上就
跪了。
c**y
发帖数: 172
25
多谢楼上指出PreOrder和InOrder算法的关键,我确实忽略了关于特殊字符的使用。这
个论坛上的人已经给出了这样的算法。具体参见Himanshu给的solution
http://www.geeksforgeeks.org/check-if-a-binary-tree-is-subtree-
我另外有两个问题
1. PostOrder和InOrder+特殊字符的方法是不是同样可行呢?
2. PreOrder,InOrder和PostOrder不加特殊字符的方法可以不可以呢?
c********t
发帖数: 5706
26
1. PostOrder和InOrder+特殊字符的方法是不是同样可行呢?

2. PreOrder,InOrder和PostOrder不加特殊字符的方法可以不可以呢?
不可以,见ls迪迪贴
c**y
发帖数: 172
27
多谢回复,还是有两个问题不明白,能否详细指教一下。

这个用特殊字符的方法一定要比较Both PreOrder(或者PostOrder)和InOrder的序列
吗?如果是的话,原因是什么呢?
啥是ls迪迪贴呀?另外问题2可能我没有表述清楚。我的意思是比较三个序列(分别由
InOrder,PreOrder和PostOrder Traversal的方法生成,但是不加任何特殊字符)。这
样三个序列不能唯一的确定一个Binary Tree吗?
s*********t
发帖数: 52
28
来自主题: JobHunting版 - 一个小面筋
电面一家最近比较火的startup
实现二叉树的postorder traversal,我就写啊,递归,很快搞定,十行左右,然后面
试官说不用写这么多四、五就能搞定,想了想也改好了。
follow up,不用递归,我就改啊,while循环,有个小错误,他提示之后,也写好了。
又follow up,在while循环的基础上,写getfirst函数,找到postorder的第一个node
指针,然后写个getnext函数,根据第一个接着一个一个找下去。我问能不能有额外内
存或者可不可以改变二叉树,比如删节点,回答说不行。然后就悲剧了,实在想不出
getnext怎么写,最后把getfirst写好就到时间了。现在想想,单向的二叉树不可能实
现吧?!嗨,当时应该多问一句是不是双向的。
f******n
发帖数: 198
29
来自主题: JobHunting版 - leetcode 150题 划重点
不是,我是九月份做的,那时候才140题。我说的新题是说最上面的十几题。我记得FB
电面的时侯被问了BST postorder iterator, leetcode上还没有(而且之前所有的tree
的题目都没有postorder)。回来之后两天leetcode就加上了,估计最近比较流行吧:)
h*****u
发帖数: 109
30
来自主题: JobHunting版 - 树遍历的考点小结
多位网友发过了,比如ultrabo,小节一下考点
A
/
B C
共六种排列 (要求): inorder, preorder, postorder, inorder right first (CAB),
preorder right first (ACB), postorder right first (CBA)
实现技术:recursive, iterative with one stack, iterative with two stacks,
iterative with parent pointer but no stacks, iterative with threaded binary
trees, Morris traversal (dynamic threaded tree)
做一个表,行是六种要求,列是各种技术,一共多少啊?还有没想到的吧。
Morris traversal codes: http://www.cnblogs.com/AnnieKim/archive/2013/06/15/MorrisTraversal.html
I**********s
发帖数: 441
31
来自主题: JobHunting版 - 一个电面疑问
是啊, 如果BST, preorder/postorder之一就可以唯一确定结构. 如果是BT, 必须要
preorder+inorder, 或者postorder+inorder.
d****n
发帖数: 233
o*q
发帖数: 630
33
来自主题: JobHunting版 - 请教leetcode高频题是哪些题
# Title Editorial Acceptance Difficulty Frequency
1
Two Sum 28.3% Easy
292
Nim Game 54.4% Easy
344
Reverse String 57.3% Easy
136
Single Number 52.2% Easy
2
Add Two Numbers 25.6% Medium
371
Sum of Two Integers 51.6% Easy
4
Median of Two Sorted Arrays
20.4% Hard
6
ZigZag Conversion 25.6% Easy
13
Roman to Integer 42.7% Easy
237
... 阅读全帖
b****n
发帖数: 865
34
澳大利亚人写的,有理有节,有反驳有论证,太强悍了
http://discussions.pbs.org/viewtopic.pbs?t=68073&postdays=0&postorder=asc&topic_view=&start=30
w********d
发帖数: 34
35
原帖。面经贴。
先报下背景,fresh cs master, 无牛实习,在学校一直跟着一个还不错的项目。
google给了我10.5w base+15% bonus+150 stock,不知道是个什么水平,但我已经很满
足了,准备从了。
第一个电面:
1. 比较hashtable和BST,神马时候用hashtable,神马时候用BST。各自的优势与缺点。
2. 那人在doc里粘了个BST的图,然后让我分别写下preorder, postorder和inorder。
然后问我已知这三个order的结果,能不能construct原本的bst。
3. 填这样一个函数 String reorder(String s, String order), 也就是要把s根据
order的顺序重新排序,然后返回。比如reorder("banana","na")应该返回"nnaab"。
order里没有出现的字母放在最后面就行了。
第二个电面:
1. 聊了一下我现在做的项目
2. 比较array和linked list的。
3. 两个linked list,如何找到intersect的那个node。
4. ... 阅读全帖
s***h
发帖数: 487
36
Recursive-function-call based graph traversal 跟 stack based graph traversal
在算法概念模型上有不少差别我想。
Recursive function call 是基于 non-overlapping subproblem 的编程概念。所谓
Preorder / inorder / postorder 就是 traverse non-overlapping subproblem 的
order。这个数学美,但有局限。
Stack 在编程概念上并不小矮挫,stack 的学名叫 LIFO ,对应的其他还有 FIFO,以
及更通用的 priority-queue (heap)。


: 不是叫iteration based traversal么?我没看哪个刷题网上用stack based来讲
,再说

: 了recursive的原理上不还是stack based么?只不过这个stack不用你费脑筋去
管理而

: 已。

s***h
发帖数: 487
37
当然对 graph 而不是 tree,subproblem 之间其实有 overlap,但这个 overlap 属于
trivial,用个 visited mark 先到先占位就是了。


: Recursive-function-call based graph traversal 跟 stack based graph
traversal

: 在算法概念模型上有不少差别我想。

: Recursive function call 是基于 non-overlapping subproblem 的编程概念。
所谓

: Preorder / inorder / postorder 就是 traverse non-overlapping
subproblem 的

: order。这个数学美,但有局限。

: Stack 在编程概念上并不小矮挫,stack 的学名叫 LIFO ,对应的其他还有
FIFO,以

: 及更通用的 priority-queue (heap)。

: ,再说

: 管理而


发帖数: 1
38
都是一样的
一个把stack放到代码段
一个把stack放到数据段
程序写法不太一样而已


: Recursive-function-call based graph traversal 跟 stack based graph
traversal

: 在算法概念模型上有不少差别我想。

: Recursive function call 是基于 non-overlapping subproblem 的编程概念。
所谓

: Preorder / inorder / postorder 就是 traverse non-overlapping
subproblem 的

: order。这个数学美,但有局限。

: Stack 在编程概念上并不小矮挫,stack 的学名叫 LIFO ,对应的其他还有
FIFO,以

: 及更通用的 priority-queue (heap)。

: ,再说

: 管理而

a*******o
发帖数: 237
39
http://discussions.pbs.org/viewtopic.pbs?t=68073&postdays=0&postorder=asc&topic_view=&start=0
一个铁杆挺中国人的澳大利亚人发言总结
西方人的思想来克制西方人比较有效。

发帖数: 1
40
来自主题: Faculty版 - 问一道google的面经题
2.第一轮:亚裔(听名字不像中国人?) 一堆人参加比赛,最开始谁和谁先比是确
定的,比赛是两两配对,一轮一轮进行,print出若有round和可能的组合。比如 有
ABCD四个人比赛, 那结果是:
1 A - B
1 C - D.鏈枃鍘熷垱鑷�1point3acres璁哄潧
2 A - C
2 A - D
2 B - C
2 B - D
但是要考虑一个情况,就是有五个人比赛,比如 ABCDE五个人, 那么E这个人可能是在
C和D比完后和他俩的胜者比,或者E 和 AB的胜者比。或者E 和 ABCD的胜者比。
问题:1.用什么数据结构存比赛者。 就说二叉树就行了,把比赛者存在叶子节点,怎
么构成不需要你考虑。
2. print出结果(应该就是postorder traversal了)
有没有人能给出代码?
f*********r
发帖数: 68
41
来自主题: JobHunting版 - Interview question::
use standard techniques to convert the recursive function to non-recursive
function. almost same as in and pre orders.
void postOrder() {
Node *p = root, *pre = root;
stack st;
int i = 0;
while(!st.empty() || p){
while(p){
st.push(p);
p = p->left;
}
p = st.top();
if(p->right == NULL || p->right == pre) {
visit(p);
st.pop();
pre = p;
p = NULL;
}
else
g*******y
发帖数: 1930
42
来自主题: JobHunting版 - Interview question::
void FindLeftmostLeaf(Node *root, stack &stk){
while(root->left || root->right){ //while(当前节点不是叶子)
stk.push(root);
if (root->left){
root = root->left;
}else{
root = root->right;
}
}
stk.push(root);
}
void PostOrder(Node *root){
if(root) return; //check empty tree;
stack stk;
Node *node=root, *parent;
//找子树中最左边的叶子,并把途中的节点放入栈
FindLeftmostLeaf(root,stk);
while(!stk.empty()){
node
i**********e
发帖数: 1145
43
来自主题: JobHunting版 - 时隔一年再次得到Amazon电面机会
序列化(Serialization)真的很有用,例如我在网站实现这个 online judge 就有用
到。ie,怎么把 binary tree,linked list,array 的函数传递参数等用 string 的
形式打印出来。
http://www.ihas1337code.com/onlinejudge
序列化 (Serialization) 二叉树是 amazon 常问题。可以好几种方法实现。
1) preorder/postorder/levelorder + inorder. 这前提是树里不能有任何重复值,
否则会有 ambiguity. 给个例子:
preorder = {7, 7}
inorder = {7, 7}
http://www.ihas1337code.com/2011/04/construct-binary-tree-from-
2)preorder/level order traverse + mark sentinel. 这个用一个 preorder
traversal 就能完成,很简单。但是缺点就是要利用一个 sentinel 来 mark。万一树... 阅读全帖
d****n
发帖数: 233
44
来自主题: JobHunting版 - Amazon coding question
Do postorder traversal without using recursion.
You can't modify the tree node struct which is as following:
struct Node {
int data;
Node *left;
Node *right;
}
If you want to use stack, use no more than 1 stack.
Any idea?:
B*****t
发帖数: 335
45
来自主题: JobHunting版 - Amazon coding question
贴个代码仅供参考
void postOrder() {
Node *p = root, *visited = root;
stack st;
int i = 0;
while(!st.empty() || p){
while(p){
st.push(p);
p = p->left;
}
p = st.top();
if(p->right == NULL || p->right == visited) {
visit(p->c);
st.pop();
visited = p;
p = NULL;
}
else
p = p->right;
}
}
I**A
发帖数: 2345
46
不知道哪个更好理解,自己看吧
//POSTORDER traversal iteratively
public static void postOrderIteratively(BST mybst){
Stack nodestack = new Stack();
Node node = mybst.root;
Node prevnode = mybst.root;
//initialize the stack
while(node!=null){
nodestack.push(node);
node = node.left;
}
while( !nodestack.isEmpty()){
node = (Node)nodestack.pop();
//if this is the leaf node, then print the data o
y*********e
发帖数: 518
47
贴一贴代码 :)
void postorder(const Node* node) {
std::stack stack;
while (node != NULL || !stack.empty()) {
if (node == NULL) {
while (!stack.empty() && node == stack.top()->right) {
node = stack.top(); stack.pop();
process(node->value);
}
node = stack.empty() ? NULL : stack.top()->right;
}
if (node != NULL) {
stack.push(node);
node = node->left;
}
}
}
c***2
发帖数: 838
48
I can do it manually. But can't get an elegant program in C.
Does Anybody know a good solution?
Thanks,
c***2
发帖数: 838
49
This one works, but looks ugly.
c***2
发帖数: 838
50
Assume total nodes <= 16.
1 2 3 4 下页 末页 (共4页)