H*M 发帖数: 1268 | 1 1. given a binary tree ,find the largest sub-tree which is a BST...(largest
mea
ns subtree having largest no of nodes in it)
我的理解是subtree就是说是一个子树,比如要到原来树的leaf,而不能把原来树的inter
nal nodes做leaf.也就是不能中间截一块,是这样的吗?
有什么好方法.我写的特别繁琐.if else 很多,用recursion.
2. 第二题说,design n stacks in an array of N. 这个我想愿意肯定不是让一个
stack分派固定的.感觉是要综合调配的,比如,如果array还有空,就不能说某个stack不
能加入了.我
想法是keep一个free list,,每个stack元素都要有个Next的指针,指向下个元素,stack
push的时候,就从freelist里面取.这样stack的元素就不连续了.
有什么其它的好办法么? | S****X 发帖数: 507 | 2 1. 可以看一下 Subtree 的定义
2. 意思是用 N array 来设计一个 Stack 算法, 很简单的
largest
inter
stack
【在 H*M 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 1. given a binary tree ,find the largest sub-tree which is a BST...(largest : mea : ns subtree having largest no of nodes in it) : 我的理解是subtree就是说是一个子树,比如要到原来树的leaf,而不能把原来树的inter : nal nodes做leaf.也就是不能中间截一块,是这样的吗? : 有什么好方法.我写的特别繁琐.if else 很多,用recursion. : 2. 第二题说,design n stacks in an array of N. 这个我想愿意肯定不是让一个 : stack分派固定的.感觉是要综合调配的,比如,如果array还有空,就不能说某个stack不 : 能加入了.我 : 想法是keep一个free list,,每个stack元素都要有个Next的指针,指向下个元素,stack
| t********e 发帖数: 25 | 3 2. Let's say n == 3;
n1->head, n1++
n2->tail, n2--
n3->tail - length/3, n3--.
Move n3 if n2 overflow.
Assume equal probability to be used. |
|