由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 最优合并及证明
相关主题
一个面试问题(A) intern电面
SnapChat 面經 + 彙總狗狗家fail的面经
请教一道Hulu的笔试题怎样理解ugly number II
微软:求一个数列中最长单调上升子列,要求O(nlogn)时间请问一下最大增长子序列的O(nLogk)算法
Goog面试挂了,回报一下本版再问道题
[合集] 微软:求一个数列中最长单调上升子列,要求O(nlogn)时间这题咋做, 有点像Run Length encoding, 但又不全是?
没人上题,我来上一道吧Amazon电话面试
求教一道最大公约数的题贡献两道的面试题
相关话题的讨论汇总
话题: 合并话题: 序列话题: l1话题: 证明话题: 60
进入JobHunting版参与讨论
1 (共1页)
S****k
发帖数: 81
1
N个序列, 两两合并成一个序列。假设合并两个长度为L1和L2的序列需要L1+L2时间。设
计一个最优合并顺序。例如:合并长度为10,30,60的序列,最佳顺序是10+30;40+60
;总共花费140. 算法不难,不过需要数学证明其正确性。
A*********c
发帖数: 430
2
贪心算法,优先合并短的,因为被合并的次数等于序列长度时间被算的次数。所以要最
小化时间,就要最小化长序列被合并的次数。

60

【在 S****k 的大作中提到】
: N个序列, 两两合并成一个序列。假设合并两个长度为L1和L2的序列需要L1+L2时间。设
: 计一个最优合并顺序。例如:合并长度为10,30,60的序列,最佳顺序是10+30;40+60
: ;总共花费140. 算法不难,不过需要数学证明其正确性。

c*******7
发帖数: 438
3
假设数列是从 L1到Ln,因为每次是两个合并成一个,每次减少1个,所以需要n-1次合
并。
策略应该是每次选长度最小的两个数列合并。暂时想不到好的证明方法。
d********e
发帖数: 239
4
哈夫曼code....用个最小堆就行了,取堆顶两次,每次把合并后的结果插入堆。堆空了
就是结束了。

60

【在 S****k 的大作中提到】
: N个序列, 两两合并成一个序列。假设合并两个长度为L1和L2的序列需要L1+L2时间。设
: 计一个最优合并顺序。例如:合并长度为10,30,60的序列,最佳顺序是10+30;40+60
: ;总共花费140. 算法不难,不过需要数学证明其正确性。

b***e
发帖数: 1419
5
http://en.m.wikipedia.org/wiki/Huffman_coding
这个跟Huffman encoding的证明是一样的。

60

【在 S****k 的大作中提到】
: N个序列, 两两合并成一个序列。假设合并两个长度为L1和L2的序列需要L1+L2时间。设
: 计一个最优合并顺序。例如:合并长度为10,30,60的序列,最佳顺序是10+30;40+60
: ;总共花费140. 算法不难,不过需要数学证明其正确性。

S********e
发帖数: 74
6
对,应该是huffman code的解法

【在 d********e 的大作中提到】
: 哈夫曼code....用个最小堆就行了,取堆顶两次,每次把合并后的结果插入堆。堆空了
: 就是结束了。
:
: 60

1 (共1页)
进入JobHunting版参与讨论
相关主题
贡献两道的面试题Goog面试挂了,回报一下本版
这周一的G家onsite,虽然挂了,还是发个面筋攒人品吧[合集] 微软:求一个数列中最长单调上升子列,要求O(nlogn)时间
二叉树分类问题没人上题,我来上一道吧
贡献两道没见过的大数据题求教一道最大公约数的题
一个面试问题(A) intern电面
SnapChat 面經 + 彙總狗狗家fail的面经
请教一道Hulu的笔试题怎样理解ugly number II
微软:求一个数列中最长单调上升子列,要求O(nlogn)时间请问一下最大增长子序列的O(nLogk)算法
相关话题的讨论汇总
话题: 合并话题: 序列话题: l1话题: 证明话题: 60