由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - convert heap to BST, and vice versa
相关主题
问两道google面试题FB面经
在版上看到的G题Google Interview Question
An interview question of finding the median in a moving window.我想了想
一个GOOG的二叉树面试题我也来问问据一个offer
这个找successor in BST 比careercup上的好很多!明天onsite, 发下两轮Amazon的面经,攒rp
google phone interview算法题:min heap inplace变 BST
麻烦谁贴一个bug free的BST next node【什么时候需要做heap, 什么时候需要做BST】
新鲜amazon电面面筋,顺带求blessgoogle 一题
相关话题的讨论汇总
话题: heap话题: bst话题: int话题: reversearm话题: versa
进入JobHunting版参与讨论
1 (共1页)
P**********c
发帖数: 3417
1
以前大家讨论过这道题,但是考古找不到了,有谁能再讲讲吗?
谢谢。
d*******d
发帖数: 2050
2
我记得这个,好像没有得出完美答案
g**********y
发帖数: 14569
3
heap to BST, 我只知道个不完美的答案,把heap sort后,依次填回heap结构中,用
successor()。
BST to heap, 有人给出答案:
public void bst2heap(int a[]) {
int n = a.length;
reverseArm(a, 0, n);
for (int i = 1; i < n / 2; i += 2)
reverseArm(a, i, n);
}
private void reverseArm(int a[], int from, int n) {
int to = from;
while (to * 2 + 2 < n)
to = to * 2 + 2;
while (to > from) {
int t = a[to];
a[to] = a[from];
a[from] = t;
from = from * 2 + 2;
to = to / 2 - 1;
}
}
这个答案有一点小bug, 就是最后的叶子有可能不对,需要检查一下。
1 (共1页)
进入JobHunting版参与讨论
相关主题
google 一题这个找successor in BST 比careercup上的好很多!
Ask a google interview questiongoogle phone interview
贡献个google电话面经麻烦谁贴一个bug free的BST next node
讨论一道题新鲜amazon电面面筋,顺带求bless
问两道google面试题FB面经
在版上看到的G题Google Interview Question
An interview question of finding the median in a moving window.我想了想
一个GOOG的二叉树面试题我也来问问据一个offer
相关话题的讨论汇总
话题: heap话题: bst话题: int话题: reversearm话题: versa