12
返回列表 发新帖
楼主: CankerHereAgain
跳转到指定楼层
上一主题 下一主题
收起左侧

新鲜狗家面筋攒人品!! 求祝福!!!

🔗
 楼主| CankerHereAgain 2018-2-26 14:14:21 | 只看该作者
全局:
jasonyang04 发表于 2018-2-26 13:27
谢谢楼主。我还是有两个问题,麻烦你能解答下。1. 围棋那题,我看了下LC130,是从边缘进行遍历,但是围棋 ...

想法的都是一样的 就是 bfs的时候 稍稍改一下规则, 如果遇到相同的棋子就压栈, 如果遇到空白的就返回没有死亡, 如果遇到对方的棋子就跳过

第二题是应该就是 longest increasing subsequence.
从头到尾遍历, 每次判断遍历到的数和 stack 顶部的数的大小,
如果当前的数大于栈顶元素, 就压栈, 否则就出栈, 直到 stack 为空或者栈顶元素小于当前元素
然后只要在运行过程中记录 stack 中元素个数的最大值就行
回复

使用道具 举报

🔗
 楼主| CankerHereAgain 2018-2-26 14:22:41 | 只看该作者
全局:
BigShaun 发表于 2018-2-26 13:53
同问第二题和LIS不一样吗? 难道是要subarray不是subsequence??

第二题应该就是 LIS, subsequence.
面试官给我的原题是  x < y < z and num.indexOf(x) < num.indexOf(y) < num.indexOf(z)
回复

使用道具 举报

🔗
jack213 2018-2-26 15:28:45 | 只看该作者
全局:
CankerHereAgain 发表于 2018-2-26 14:14
想法的都是一样的 就是 bfs的时候 稍稍改一下规则, 如果遇到相同的棋子就压栈, 如果遇到空白的就返回没有 ...

楼主你这个LIS不太对啊,比如输入数据是
2, 3, 1, 4
你一开始把 2, 3 压进去了
到 1 的时候把 2, 3 都弹出来了
最后把 4 压进去
你这样stack里面最多的时候元素为 2
但实际上 2, 3, 4 是一个长度为3的 LIS
回复

使用道具 举报

🔗
anica567 2018-2-27 11:38:09 | 只看该作者
全局:
CankerHereAgain 发表于 2018-2-26 10:12
https://www.youtube.com/watch?v=yCQN096CwWM
这个视频解释的很详细!

谢谢!!! 视频讲的很好!
回复

使用道具 举报

🔗
Augustus 2018-2-27 14:18:31 | 只看该作者
全局:
狗家bar这么高,感觉去了也是当分母。。。
回复

使用道具 举报

🔗
wb7 2018-2-27 14:42:53 | 只看该作者
全局:
jack213 发表于 2018-2-26 15:28
楼主你这个LIS不太对啊,比如输入数据是
2, 3, 1, 4
你一开始把 2, 3 压进去了

和我想的一样,出栈操作是可能改变当前的subsequence的起始位置的,如果扫array的时候看到了比栈底元素更小的元素会导致所有元素出栈,会错过可能的解。

就是说,单调栈解决不了之后看到的数据比栈里最小的数据更小,并且后来数据存在比当前栈里数据更大的情况。

ps 楼主发的视频确实讲的非常好。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

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