查看: 2556| 回复: 8
跳转到指定楼层
上一主题 下一主题
收起左侧

[其他] 面試時,follow up 資料量太大的準備方向

全局:

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

您需要 登录 才可以下载或查看附件。没有帐号?注册账号

x

目前在準備 FLAG 的 onsite.
地裏面經,
常提到follow-up就是數據很大時候該怎麼處理?
這時候記憶體放不下、無法一次處理完。

舉例: Leetcode 上 Number of Islands   

假設 grids 是超級大的話,
這時候我們可能會切塊處理
每次處理 1k*1k 的dimension,
但是我不太理解 假設我有2份 1k*1k的grids.
假設 原本大棋盤分成 左|右
我要怎麼處理 merge 的步驟?
假設 左邊 處理完有 100個島嶼 右邊 處理完有 200個島嶼。
但是也許他們合併再一起、有些島嶼又可以被合併了。
所以答案也許是234個島嶼
這邊 merge 的思路,有人有idea嗎?

我甚至還有看過 無窮大的棋盤(grids)
但是沒印象看到該如何解決無窮大的問題。

Thanks~


上一篇:业余选手刷题200+总结
下一篇:常用位操作总结
🔗
14417335 2019-2-14 01:52:16 | 只看该作者
全局:
我不知道这个思路行不行:

如果每个unit记录边界。0表示是unit内部的,具体什么值不是下图表示的重点。X是该unit的边界。表示parent的id。然后四个个unit通过合并内部边界得到一个大的unit。大的unit也有4倍长的边界。recusively和更多的合并。因为边界也会越来越大,类似的做法可以应用到边界的合并上。

  1.   X X
  2. X 0 0 X
  3. X 0 0 X
  4.   X X
复制代码
回复

使用道具 举报

🔗
tomato217 2019-2-14 15:19:08 | 只看该作者
全局:
四连通的话,左grid右edge与右grid左edge求交,转化为1k的vector上求连通区域数n,然后100+200-n
回复

使用道具 举报

🔗
7hebotz 2019-2-26 05:26:05 | 只看该作者
全局:
持续关注一波
回复

使用道具 举报

🔗
z729 2019-2-26 09:06:57 | 只看该作者
本楼:
全局:
马克一下
回复

使用道具 举报

🔗
沉风 2019-2-26 09:21:00 | 只看该作者
全局:
递归 变迭代 分解 等等
回复

使用道具 举报

🔗
wangshibo1993 2019-2-26 14:18:28 | 只看该作者
全局:
tomato217 发表于 2019-2-14 15:19
四连通的话,左grid右edge与右grid左edge求交,转化为1k的vector上求连通区域数n,然后100+200-n

就是union-find
回复

使用道具 举报

🔗
红魔1878 2019-2-27 14:41:26 | 只看该作者
全局:
马克 持续关注。经常问到
回复

使用道具 举报

🔗
wsx247 2019-2-27 15:13:28 | 只看该作者
本楼:
全局:
马克一下
回复

使用道具 举报

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

本版积分规则

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