一亩三分地论坛

 找回密码
 获取更多干货,去instant注册!

扫码关注一亩三分地公众号
查看: 340|回复: 6
收起左侧

[其他] 请教peak element ii

[复制链接] |试试Instant~ |关注本帖
kittycerry 发表于 2015-6-23 13:48:20 | 显示全部楼层 |阅读模式

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看,没有帐号?获取更多干货,去instant注册!

x
要求o(m+n),所以必然是要么横着走要么竖着走,所以有
if (A[i+1][j] > A[i][j+1]) {
                i++;
            } else {
                j++;
            }
但这样会不会miss掉答案啊?怎么能证明这个走法是对的?楼主觉得没啥道理
stellari 发表于 2015-6-23 20:15:47 | 显示全部楼层
这个算法应该不行,比如下面这个例子:

10   11
9     90
101 100

(假设这个数组外围还有一圈特别小的数字)
首先比较10的两个neighbor: 11和9, 因为11大,所以j++,然后从11继续往后找。但是此时可搜索的矩阵范围只剩下
11
90
100
这三个数了,而这三个数没有任何一个是peak,所以程序会报没有peak。

但是事实上,这个数组的peak是101。

我搜了一下,确实看到网上有人提到过这个解法。但我估计这个解法之所以能过是因为Lintcode的test case比较弱。


回复 支持 反对

使用道具 举报

 楼主| kittycerry 发表于 2015-6-23 23:16:15 | 显示全部楼层
stellari 发表于 2015-6-23 20:15
这个算法应该不行,比如下面这个例子:

10   11

这个和1-d的那个不一样的是,他不考虑那一圈边上
回复 支持 反对

使用道具 举报

stellari 发表于 2015-6-24 00:12:34 | 显示全部楼层
kittycerry 发表于 2015-6-23 23:16
这个和1-d的那个不一样的是,他不考虑那一圈边上

麻烦你说得再清楚一点。“谁”不考虑“什么那一圈边上”?

Lintcode上的Peak I和Peak II两题都在边界上做了限定,即“任一紧挨边界上的元素A”一定比“相邻于A且处于边界上的元素B”要大。这样在实现难度上就略有下降。在Lintcode上这两题的边界条件在我看来并无不同之处。所以我想你也许是将此题和Leetcode上的Peak做了对比,Leetcode上是假设了两个不存在的元素A[-1] = A[N] = -inf,所以需要在边界处进行一个额外判断。但是无论是何种边界规定,实现算法并无区别。

所以,我觉得不需要太过关注边界问题。仅讨论算法本身即可。我目前的结论是:

if (A[i+1][j] < A[j+1])这种算法是不行的,有反例为证。之所以能够通过Lintcode是因为该平台的test case不够强。


回复 支持 反对

使用道具 举报

 楼主| kittycerry 发表于 2015-6-26 10:57:17 | 显示全部楼层
stellari 发表于 2015-6-24 00:12
麻烦你说得再清楚一点。“谁”不考虑“什么那一圈边上”?

Lintcode上的Peak I和Peak II两题都在边界 ...

我理解的题目的意思是不考虑边缘上的
回复 支持 反对

使用道具 举报

stellari 发表于 2015-6-26 11:20:48 | 显示全部楼层
kittycerry 发表于 2015-6-26 10:57
我理解的题目的意思是不考虑边缘上的

本来就是这样啊。因为在Lintcode给定的条件下,边缘上的值不可能成为peak (peak I和peak II两题都如此)。所以我在自己给的反例中干脆就没有把边界值写出来。
回复 支持 反对

使用道具 举报

 楼主| kittycerry 发表于 2015-6-26 11:28:32 | 显示全部楼层
stellari 发表于 2015-6-26 11:20
本来就是这样啊。因为在Lintcode给定的条件下,边缘上的值不可能成为peak (peak I和peak II两题都如此) ...

lintcode peek I 我没看,我记得leetcode的peak 是可以算边界的
回复 支持 反对

使用道具 举报

本版积分规则

请点这里访问我们的新网站:一亩三分地Instant.

Instant搜索更强大,不扣积分,内容组织的更好更整洁!目前仍在beta版本,努力完善中!反馈请点这里

关闭

一亩三分地推荐上一条 /5 下一条

手机版|小黑屋|一亩三分地论坛声明 ( 沪ICP备11015994号 )

custom counter

GMT+8, 2016-12-5 02:43

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

快速回复 返回顶部 返回列表