boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 解一道 GOOGLE 面试题 ...
相关主题
直方图盛水最大容量问题
google面试题回馈
一个老面试题
最近大公司的面试题有不再偏难的趋势
面试题请教:一个矩阵,里面的值是0或1,找出最大子矩阵,此子矩阵的值全为1
问一个题
白板代码,直方图包含的最大矩形面积
明天onsite却发现好多还没掌握啊
ooyala,apple,ebay面经
顶风作案,Google面经
相关话题的讨论汇总
话题: case话题: x2话题: x1话题: 细条话题: max
进入JobHunting版参与讨论
1 (共1页)
o******r
发帖数: 259
1
求直方图的最大内接矩形,假设每个细条的宽度为1
好象还没见着解法,我来抛砖引玉吧.
就是找2点x1 < x2, 对应高度h(x), x in [a, b]
S = (x2 - x1)*min h(x), x in [x1, x2]
求 max S
直观解法是列举x1, x2, O(N^2)
先看几个简单情况,细条高度如果是连续值:
1. 单调递减
x1=a, x2 in (a, b]
遍历细条找max area的内接矩形 O(N)
2. 单调递增
和1类似,x1 in [a, b), x2 = b,
遍历, O(N)
3. U 形
分解出 Case 1 和 Case 2,求max
还有 case x1 = a, x2 =b
取3者 max, O(N)
4. n 形
如果2端的细条高度不一样,还可以分解出Case 1 或 2
x1, x2 分别在 上升坡 和下降坡, 而且高度相等
可以从最高细条分别从两边找等高细条,h(x1) = h(x2),找max
O(N)
5. 一般情况
按照 Case 1, 2 分解,发现剩下若干不相邻的 Case 4
依次按 Case 4求解,
还有case
1 (共1页)
进入JobHunting版参与讨论
相关主题
顶风作案,Google面经
问问题,0/1 矩阵内最大1矩阵的问题
刚刚onsite G家,发面经求祝福
直方图下最大矩形问题 o(n) 解对吗?
求Leetcode OJ Maximal Rectangle的n^2解法
一道老题
直方图下雨这道题怎么解?
直方图下最大矩阵题的疑问
请教一道题
问个.ihas1337code blog上面的经典DP题
相关话题的讨论汇总
话题: case话题: x2话题: x1话题: 细条话题: max