楼主: jiangqueque
跳转到指定楼层
上一主题 下一主题
收起左侧

人肉翻墙-脱产刷题-记录帖

🔗
chan9118 2019-4-12 09:59:55 | 只看该作者
全局:
jiangqueque 发表于 2019-4-2 07:39
今天复习了DFS两道题。
1.word break
Gieve s = codecode,

做這類題目,還建議想清楚corner cases和time complexity。

我之前interview大廠的時候遇過word break, 由brute force做到dp,但跪了。feedback說我雖然做了optimal解,但time complexity & corner cases analysis答得不好。。。
回复

使用道具 举报

🔗
jackli31742 2019-4-12 10:21:18 | 只看该作者
全局:
摩拜大佬,祝早日上岸
回复

使用道具 举报

🔗
CalL_Me_Joker 2019-4-12 10:47:44 | 只看该作者
全局:
有身份的话  问题不大诶 感觉
回复

使用道具 举报

🔗
 楼主| jiangqueque 2019-4-12 10:51:37 | 只看该作者
全局:
chan9118 发表于 2019-4-12 09:59
做這類題目,還建議想清楚corner cases和time complexity。

我之前interview大廠的時候遇過word break ...

是啊,我之前也是无脑写出来就算结束。
发现自己time complexity都分析不好。。
以后写每道题应该先想好用什么算法,时间复杂度,还有Corner case。。

多谢分享~~ :)
回复

使用道具 举报

🔗
 楼主| jiangqueque 2019-4-12 10:57:00 | 只看该作者
全局:

04/10/19

1.Find kth smallest element in an array
2.sort colorsII
3.Interval Statistics
题目有点难理解。
Given an array of 01 and k. You need to count how many intervals meet the following conditions:
Both start and the end of the interval are 0 (allowing the length of the interval to be 1).
The number of 1 in the interval is not more than k.
Example
Given arr=[0,0,1,0,1,1,0], k=1, return 7.
也就是说,选择一些区间,左右都是0,要求他们之间的1的个数不能超过k个,问有几个这样的区间。
用two pointer来做,时间复杂度O(n)

4.一些easy题。
回复

使用道具 举报

🔗
 楼主| jiangqueque 2019-4-12 10:59:24 | 只看该作者
全局:
seawill77 发表于 2019-4-12 10:47
有身份的话  问题不大诶 感觉

谢谢鼓励!!借您吉言了:)
回复

使用道具 举报

🔗
 楼主| jiangqueque 2019-4-12 11:00:22 | 只看该作者
全局:
jackli31742 发表于 2019-4-12 10:21
摩拜大佬,祝早日上岸

不是什么大佬,每天踏踏实实“补课”哈哈。
谢谢鼓励~~
回复

使用道具 举报

🔗
 楼主| jiangqueque 2019-4-15 02:32:12 | 只看该作者
全局:
04/14/19

1.search in rotated array II
在一个包含重复数的倒装数组里寻找target
如,[2,2,3,3,4,1,1,1], target = 4
我想到的办法用Partition,
每次从中间将数组均分为两部分,每部分操作时间复杂度为O(1), 一共划分logn次,平均时间复杂度O(logn).
最差情况target在数组两边,时间复杂度为O(n)

有人的做法是,把mid数与start比,如果相等则start++直到不相等。不相等时则等于与seart in rotated array I 的题目。
回复

使用道具 举报

🔗
 楼主| jiangqueque 2019-4-16 07:00:57 | 只看该作者
全局:
04/15/19
1.find peak in an array
2.two sum
3.doing homework
4.longest substring without repeating charactors
hashmap+两根指针。
用fast指针往右边扫描,无重复则加入hashmap,如果有重复则将slow对应的字符在hashmap里删除,slow右移一位。
最长substring取fast-slow与最长的比较。
回复

使用道具 举报

🔗
 楼主| jiangqueque 2019-4-18 05:13:21 | 只看该作者
全局:
04/16/19

1.1779 Shortest Duplicate Subarray  
找最短包含重复数字的subarray长度。比如[1,1,2,3,2],返回2,因为[1,1]为最短,[1,3,2,3]返回3,因为[3,2,3]最短。
用hashmap存无重复的数字及index, 遍历array是遇到重复的则计算当前subarray长度是不是比之前算的小。若是则更新hashmap对应的无重复数字及index。知道遍历完数组。
TC: O(n), SC : O(n)

2.1713 Unique Email Addresses  
给一组邮箱地址,判断无重复的地址有几个。'.'等价于没有,'+'后面到’@‘前等同于没有。
Jiang.queque@ll.com 和jiangqueque+12312@ll.com等同于 jiangqueque@ll.com
Unorderd_set + string遍历。
TC: O(n), SC : O(n2)
可以优化的点,把邮箱后缀、前缀组合都保存到hashmap, 这样每次检查是否重复时可以省时间。空间换时间。

3. 88 Lowest Common Ancestor of a Binary Tree
求树中某两元素的共同最低的父节点。
先DFS求从顶到每个元素的path,再比较两个path最近一个相同节点。  
回复

使用道具 举报

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

本版积分规则

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