M*7
2 楼
首先感谢推荐以及陪同午饭的大牛哥,以及一直帮忙的美女!
本着同样帮同胞的精神回馈一下版面。
今天接到人力电话,说反馈还不错,但是很遗憾只能明年见了,不知道啥原因。
当时面试感觉挺好的,面之前就知道这个据点不怎么招人,不知道是不是这个原因。
电面两轮。
共五轮,有三轮和面试官谈的双方都很开心,其他的一轮也算中上,有一轮一般,但题
也做出来了。
所有题不是leetcode加面经覆盖过的,就是思路不怎么难的题。
不按照顺序上题
一、一道面经里面提到过讨论过,但是不太一样的。改用中文例子。
就是字符串编码解码。
编码规则是
原字串:
春节快乐喜气羊羊羊年大吉
编码为:
春节快乐喜气3x羊年大吉
两个情况下会有歧义:一个是原字串中的数字加x
之前面经提到的是用两个x转义,但是我遇到的要求是解码程序的逻辑不能改变。
此外还有压缩后前面的数字问题,比如
3羊羊羊开泰
变成33x羊开泰则解码程序会出错。
实际上这两个问题是一个问题,就是编码后源串中代表数字的字符恰好出现在数字加x
前面怎么办。
经过讨论,解决方法是将所有的领头数字编码例如:
3羊羊羊开泰
就编码成
1x33x羊开泰
要求尽量优化,也就是说只有歧义的情况下才将数字编码。
我给出的方法是扫描字符流(这个是限定的输入条件)同时维护一个窗口,然后随时判
断是否可以输出窗口,如果需要则对窗口做转义再输出。
二、每个字串可以编码为头尾字符和中间的字符数
例如
新春快乐万事如意
变成
新6意
实现方法给一个字典,一个字串,返回字串的编码是否在字典里面有冲突。
确认了字串是否一定在字典里;反问你怎么设计;我说如果在的话还是返回是否有冲突
,如果不在的话返回是否和现有的有冲突;认可这个设计。
确认字串长度不足3怎么办;反问你怎么设计;我说不足就是返回原串;认可这个设计。
确认思路是每个字串都可以直接得到编码,之后用这个编码字串判断冲突就可以。
实现很直接;写的时候,提到如果工作中遇到的话,一般要构建这个字典,所以可以保
留一个编码到字串的哈希表,用来直接判断。
对方听了以后让设计这个类的api。
三、
给定字串,输出第一个不重复字符的索引值
例如
0 1 2 3 4
羊年发羊财
输出1,因为羊重复。
其他题都是出过的就不说了。
总结一些要点希望有用。
. 每轮期待做出两题,其中第二题可能是变种,也可能是新题,而第三题一般让说思路
就可以了。我只有其中一面写了三题,大概是因为第二题的变种比较简单。
. 重点还是考代码,和对于算法分析的熟悉,会的思路要能写成简要工作的代码才有用
,如果说了很高深的算法一般也不会让写。
. 重视交流,包括开始有思路的时候要说,就算是有些明显的假定也要说出来,说几个
分支,如果这样如何, 如果那样如何,然后讨论;没思路或者有问题的时候要说,确
认哪些是对方的肯定要求,确认问题的存在,提出实例或者解决方法,当场试验也可以
,但是不要冷场;写代码的时候也要说,我这里要干啥,如何如何。 要特别注明一点
,对方的反馈即便是反问或反例也有可能是提示讨论或引导,不要反感,而要积极的针
对进行讨论。 还有就是面试官不可能准备所有可能的解法,有可能自己的解法不是预
期的,但你确定的话就可以讲解。
最近看大家提到年老色衰的马工准备和刷题的问题,随便说两句希望给大家一些信心:
我是年底时被人力联系,开始没太抱希望,后来过了电面开始准备,刷leetcode,去年
没用的年假都用来干这个了,前后折腾了1个半月,这里感谢一下老婆在这段时间的支
持!
以前也比较怵头刷题,开始刷的时候找简单的开始,刷起来了就有感觉了,第一遍12天
刷完,后来又过了2遍,到现在总来版上看看新题和大家讨论下思路。感觉leetcode上
的题真心不是变态的,刷一下练练编码基本功其实对工作也是有一定帮助的:
一是对于一些简便的方法api,以前不知道用的现在可以顺手使用。
二是一些便捷的实现工具例如链表假头这种简化实现的方法比较熟练了。
三是对一些具体的编码实例系统的掌握了,比如多线程的一些常用模式实现,这个正好
在准备期间用在了修一个公司的问题上。
此外虽然没被问到系统设计,但准备中了解的各方面知识和解决方法感觉挺有用的。
有些朋友可能家里老人小孩工作操劳的没时间没精力,如果不是完全忙到没时间体力,
刷题真心不是特别巨大的工程。
我不是大牛,但咬咬牙也刷过来了,比起一个同事年假在家没事干,某游戏打到50级,
还是有些用的,就算给自己多个选择吧。
有些刷题的个人经验: 实在太怵头的,可以从简单开始,找找感觉。比较有效率的方法
是按专题分类做,比如树,链表,动规等分类。做多了就会总结出常见套路,例如链表
无非是一个假头,一个反转,一个快慢指针几个常规动作,加上一些观察到的技巧。因
为时间原因没时间看G4G,但上面的动规讲的不错,还有计算几何的基本算法也有讲解
,看一下很帮助理解。每题想通搞懂后,留下笔记和注释,包括关于思路的,以及关于
细节的,这样下次再刷就简单了。明显属于思路难的题,稍微想一下想不出来就去搜一
下思路,不然自己想太费时间了。
面经里面的题很多来源不详,很多题都说不清,或者细节缺少太多甚至无法分析,这种
题看看就过了,不过可以把每次类似的放在一起,这样拼凑起来有时候帖子中会提到某
关键点,这样就能知道这道题的关键思路在哪里了。顺便说一句,其实面的时候感觉还
是编码的基本功,面经和刷难题主要的作用是提前分析不熟悉思路,减少临场想的风险
。有近期的高频题最好自己写一下,有的时候版面上说了算法名就过了,可自己写了会
发现在面试中自己写是不可能的,这种情况下最好能多讨论下,或者自己好好研究下。
看版面上有人抱怨中国人刷题搞坏了风气。
这次准备的过程中,我就回想起本人多年前面试时候,那时候还没有这种方便在线刷题
的网站,曾经被三问过的类似leetcode的题。当时还被问到一些概念题,感觉就是他们
在某培训学校学的概念,必须要按照他们设计的答案答才是正解,否则就一脸不屑。最
近朋友也有参加非CS专业考试的时候,看到三们拿着一叠厚厚的面经材料,估计是类似
于新东方爱西西这样的机构搞出来的。所以个人觉得刷题搞面经不一定是我们搞出来的
,始作俑者和现在的踊跃实施者并不一定是我们呢。
当然希望有机会奔向管理的同胞能够更多,不过由于各种原因可能不适合于所有人,所
以根据个人呢机会不同有条件做管理就做管理,有条件发展数量就发展数量,都能帮助
同胞把势做大一些,这样大家都能多一些机会。
祝大家职业发展顺利,合家健康幸福!
本着同样帮同胞的精神回馈一下版面。
今天接到人力电话,说反馈还不错,但是很遗憾只能明年见了,不知道啥原因。
当时面试感觉挺好的,面之前就知道这个据点不怎么招人,不知道是不是这个原因。
电面两轮。
共五轮,有三轮和面试官谈的双方都很开心,其他的一轮也算中上,有一轮一般,但题
也做出来了。
所有题不是leetcode加面经覆盖过的,就是思路不怎么难的题。
不按照顺序上题
一、一道面经里面提到过讨论过,但是不太一样的。改用中文例子。
就是字符串编码解码。
编码规则是
原字串:
春节快乐喜气羊羊羊年大吉
编码为:
春节快乐喜气3x羊年大吉
两个情况下会有歧义:一个是原字串中的数字加x
之前面经提到的是用两个x转义,但是我遇到的要求是解码程序的逻辑不能改变。
此外还有压缩后前面的数字问题,比如
3羊羊羊开泰
变成33x羊开泰则解码程序会出错。
实际上这两个问题是一个问题,就是编码后源串中代表数字的字符恰好出现在数字加x
前面怎么办。
经过讨论,解决方法是将所有的领头数字编码例如:
3羊羊羊开泰
就编码成
1x33x羊开泰
要求尽量优化,也就是说只有歧义的情况下才将数字编码。
我给出的方法是扫描字符流(这个是限定的输入条件)同时维护一个窗口,然后随时判
断是否可以输出窗口,如果需要则对窗口做转义再输出。
二、每个字串可以编码为头尾字符和中间的字符数
例如
新春快乐万事如意
变成
新6意
实现方法给一个字典,一个字串,返回字串的编码是否在字典里面有冲突。
确认了字串是否一定在字典里;反问你怎么设计;我说如果在的话还是返回是否有冲突
,如果不在的话返回是否和现有的有冲突;认可这个设计。
确认字串长度不足3怎么办;反问你怎么设计;我说不足就是返回原串;认可这个设计。
确认思路是每个字串都可以直接得到编码,之后用这个编码字串判断冲突就可以。
实现很直接;写的时候,提到如果工作中遇到的话,一般要构建这个字典,所以可以保
留一个编码到字串的哈希表,用来直接判断。
对方听了以后让设计这个类的api。
三、
给定字串,输出第一个不重复字符的索引值
例如
0 1 2 3 4
羊年发羊财
输出1,因为羊重复。
其他题都是出过的就不说了。
总结一些要点希望有用。
. 每轮期待做出两题,其中第二题可能是变种,也可能是新题,而第三题一般让说思路
就可以了。我只有其中一面写了三题,大概是因为第二题的变种比较简单。
. 重点还是考代码,和对于算法分析的熟悉,会的思路要能写成简要工作的代码才有用
,如果说了很高深的算法一般也不会让写。
. 重视交流,包括开始有思路的时候要说,就算是有些明显的假定也要说出来,说几个
分支,如果这样如何, 如果那样如何,然后讨论;没思路或者有问题的时候要说,确
认哪些是对方的肯定要求,确认问题的存在,提出实例或者解决方法,当场试验也可以
,但是不要冷场;写代码的时候也要说,我这里要干啥,如何如何。 要特别注明一点
,对方的反馈即便是反问或反例也有可能是提示讨论或引导,不要反感,而要积极的针
对进行讨论。 还有就是面试官不可能准备所有可能的解法,有可能自己的解法不是预
期的,但你确定的话就可以讲解。
最近看大家提到年老色衰的马工准备和刷题的问题,随便说两句希望给大家一些信心:
我是年底时被人力联系,开始没太抱希望,后来过了电面开始准备,刷leetcode,去年
没用的年假都用来干这个了,前后折腾了1个半月,这里感谢一下老婆在这段时间的支
持!
以前也比较怵头刷题,开始刷的时候找简单的开始,刷起来了就有感觉了,第一遍12天
刷完,后来又过了2遍,到现在总来版上看看新题和大家讨论下思路。感觉leetcode上
的题真心不是变态的,刷一下练练编码基本功其实对工作也是有一定帮助的:
一是对于一些简便的方法api,以前不知道用的现在可以顺手使用。
二是一些便捷的实现工具例如链表假头这种简化实现的方法比较熟练了。
三是对一些具体的编码实例系统的掌握了,比如多线程的一些常用模式实现,这个正好
在准备期间用在了修一个公司的问题上。
此外虽然没被问到系统设计,但准备中了解的各方面知识和解决方法感觉挺有用的。
有些朋友可能家里老人小孩工作操劳的没时间没精力,如果不是完全忙到没时间体力,
刷题真心不是特别巨大的工程。
我不是大牛,但咬咬牙也刷过来了,比起一个同事年假在家没事干,某游戏打到50级,
还是有些用的,就算给自己多个选择吧。
有些刷题的个人经验: 实在太怵头的,可以从简单开始,找找感觉。比较有效率的方法
是按专题分类做,比如树,链表,动规等分类。做多了就会总结出常见套路,例如链表
无非是一个假头,一个反转,一个快慢指针几个常规动作,加上一些观察到的技巧。因
为时间原因没时间看G4G,但上面的动规讲的不错,还有计算几何的基本算法也有讲解
,看一下很帮助理解。每题想通搞懂后,留下笔记和注释,包括关于思路的,以及关于
细节的,这样下次再刷就简单了。明显属于思路难的题,稍微想一下想不出来就去搜一
下思路,不然自己想太费时间了。
面经里面的题很多来源不详,很多题都说不清,或者细节缺少太多甚至无法分析,这种
题看看就过了,不过可以把每次类似的放在一起,这样拼凑起来有时候帖子中会提到某
关键点,这样就能知道这道题的关键思路在哪里了。顺便说一句,其实面的时候感觉还
是编码的基本功,面经和刷难题主要的作用是提前分析不熟悉思路,减少临场想的风险
。有近期的高频题最好自己写一下,有的时候版面上说了算法名就过了,可自己写了会
发现在面试中自己写是不可能的,这种情况下最好能多讨论下,或者自己好好研究下。
看版面上有人抱怨中国人刷题搞坏了风气。
这次准备的过程中,我就回想起本人多年前面试时候,那时候还没有这种方便在线刷题
的网站,曾经被三问过的类似leetcode的题。当时还被问到一些概念题,感觉就是他们
在某培训学校学的概念,必须要按照他们设计的答案答才是正解,否则就一脸不屑。最
近朋友也有参加非CS专业考试的时候,看到三们拿着一叠厚厚的面经材料,估计是类似
于新东方爱西西这样的机构搞出来的。所以个人觉得刷题搞面经不一定是我们搞出来的
,始作俑者和现在的踊跃实施者并不一定是我们呢。
当然希望有机会奔向管理的同胞能够更多,不过由于各种原因可能不适合于所有人,所
以根据个人呢机会不同有条件做管理就做管理,有条件发展数量就发展数量,都能帮助
同胞把势做大一些,这样大家都能多一些机会。
祝大家职业发展顺利,合家健康幸福!
r*5
3 楼
执手相看泪眼,竟无语凝咽,,,,,
天涯独行客,唯有行云寄语,
望断归处,雁过已,剩斜阳残雪,
江山无际。
=====================================
《无语凝咽》
一两点离愁
三四次回眸
五六个手中红豆
七八种相思在心头
九十里望断斜阳山后
十一步踏破石板青苔路
十二次徒劳挥袖
十三遍目送伊人远走
十四处登高凭楼
十五帆天涯归舟
十六家酒肆不够
十七杯离别苦酒
十八碗浊泪独流
百转回肠美人消瘦
千种风情有谁怜惜娇柔
万般皆空直把此生看透
纵是你无限留恋夕阳日暮
还不得晓月对影悲哭
天涯独行客,唯有行云寄语,
望断归处,雁过已,剩斜阳残雪,
江山无际。
=====================================
《无语凝咽》
一两点离愁
三四次回眸
五六个手中红豆
七八种相思在心头
九十里望断斜阳山后
十一步踏破石板青苔路
十二次徒劳挥袖
十三遍目送伊人远走
十四处登高凭楼
十五帆天涯归舟
十六家酒肆不够
十七杯离别苦酒
十八碗浊泪独流
百转回肠美人消瘦
千种风情有谁怜惜娇柔
万般皆空直把此生看透
纵是你无限留恋夕阳日暮
还不得晓月对影悲哭
M*5
6 楼
这个要赞。
w*a
9 楼
好面经,赞
w*a
11 楼
都过去了,说说是什么吧
e*a
12 楼
第一遍12天刷完??? 180+ lc problems???
p*e
14 楼
太没人性了太没人性了太没人性了太没人性了
c*w
15 楼
赞。 这些题看着还靠谱。那些面经说什么就用KMP的真的是当场就让实现出来??
I*9
17 楼
考
bso不带包子的都tcqtjjtds
bso不带包子的都tcqtjjtds
M*7
18 楼
第一遍时候算上付费还只有162题。
其他的是后来随出随做的。
【162在 edmca (革命象暴风雨) 的大作中提到: 】
其他的是后来随出随做的。
【162在 edmca (革命象暴风雨) 的大作中提到: 】
n*s
20 楼
Bso ya
M*7
21 楼
看面经好像有问kmp的 准备了一下
主要是那道最多重复子串的题要用类似的思路
如果考了也是够bt的。
如果不是故意黑 也许可以准备几个优化方案然后讨论实现吧 如果我们自己就知道坚持
kmp没有备选方案 那对方让写也不能算太离谱 如果对方点名让写感觉题出的不好 因为
考这种熟悉的就会 不熟悉就不会的是没啥意思。
amp在 codereview (codereview) 的大作中提到: 】
主要是那道最多重复子串的题要用类似的思路
如果考了也是够bt的。
如果不是故意黑 也许可以准备几个优化方案然后讨论实现吧 如果我们自己就知道坚持
kmp没有备选方案 那对方让写也不能算太离谱 如果对方点名让写感觉题出的不好 因为
考这种熟悉的就会 不熟悉就不会的是没啥意思。
amp在 codereview (codereview) 的大作中提到: 】
j*e
26 楼
啥deal
i*h
27 楼
同问
V*e
29 楼
冰淇淋机占其一
R*g
32 楼
难道是icecream machine?
S*w
33 楼
二、每个字串可以编码为头尾字符和中间的字符数
例如
新春快乐万事如意
变成
新6意
实现方法给一个字典,一个字串,返回字串的编码是否在字典里面有冲突。
确认了字串是否一定在字典里;反问你怎么设计;我说如果在的话还是返回是否有冲突
,如果不在的话返回是否和现有的有冲突;认可这个设计。
确认字串长度不足3怎么办;反问你怎么设计;我说不足就是返回原串;认可这个设计。
确认思路是每个字串都可以直接得到编码,之后用这个编码字串判断冲突就可以。
实现很直接;写的时候,提到如果工作中遇到的话,一般要构建这个字典,所以可以保
留一个编码到字串的哈希表,用来直接判断。
对方听了以后让设计这个类的api。
这题目 什么意思
没看懂 :-)
例如
新春快乐万事如意
变成
新6意
实现方法给一个字典,一个字串,返回字串的编码是否在字典里面有冲突。
确认了字串是否一定在字典里;反问你怎么设计;我说如果在的话还是返回是否有冲突
,如果不在的话返回是否和现有的有冲突;认可这个设计。
确认字串长度不足3怎么办;反问你怎么设计;我说不足就是返回原串;认可这个设计。
确认思路是每个字串都可以直接得到编码,之后用这个编码字串判断冲突就可以。
实现很直接;写的时候,提到如果工作中遇到的话,一般要构建这个字典,所以可以保
留一个编码到字串的哈希表,用来直接判断。
对方听了以后让设计这个类的api。
这题目 什么意思
没看懂 :-)
c*0
36 楼
这个楼主好憨厚, 赞!!!新年大发啊!
y*r
38 楼
re
w*t
39 楼
赞汉化面试题!
gw
40 楼
两滴离人泪,坠入尘。
只恨当日情太深。
漫漫夜,挑烛忆香唇。
~~~~~~~~~~~~~~~~~~~~~~~
为什么是忆“香唇”?
只恨当日情太深。
漫漫夜,挑烛忆香唇。
~~~~~~~~~~~~~~~~~~~~~~~
为什么是忆“香唇”?
m*n
42 楼
多谢分享
C*8
44 楼
你们说啥 没看明白
M*7
45 楼
再举个例子说明
比如字串是
恭喜发财红包拿来
第一个字 恭
最后一个字 来
中间夹6个字
所以编码后就是
恭6来
如果字典是:
恭喜发财红包拿来
恭贺新禧好运常来
而字串是
恭喜发财红包拿来
则返回冲突,因为 恭贺新禧好运常来 的编码也是 恭6来
计。
【在 S***w 的大作中提到】
: 二、每个字串可以编码为头尾字符和中间的字符数
: 例如
: 新春快乐万事如意
: 变成
: 新6意
: 实现方法给一个字典,一个字串,返回字串的编码是否在字典里面有冲突。
: 确认了字串是否一定在字典里;反问你怎么设计;我说如果在的话还是返回是否有冲突
: ,如果不在的话返回是否和现有的有冲突;认可这个设计。
: 确认字串长度不足3怎么办;反问你怎么设计;我说不足就是返回原串;认可这个设计。
: 确认思路是每个字串都可以直接得到编码,之后用这个编码字串判断冲突就可以。
比如字串是
恭喜发财红包拿来
第一个字 恭
最后一个字 来
中间夹6个字
所以编码后就是
恭6来
如果字典是:
恭喜发财红包拿来
恭贺新禧好运常来
而字串是
恭喜发财红包拿来
则返回冲突,因为 恭贺新禧好运常来 的编码也是 恭6来
计。
【在 S***w 的大作中提到】
: 二、每个字串可以编码为头尾字符和中间的字符数
: 例如
: 新春快乐万事如意
: 变成
: 新6意
: 实现方法给一个字典,一个字串,返回字串的编码是否在字典里面有冲突。
: 确认了字串是否一定在字典里;反问你怎么设计;我说如果在的话还是返回是否有冲突
: ,如果不在的话返回是否和现有的有冲突;认可这个设计。
: 确认字串长度不足3怎么办;反问你怎么设计;我说不足就是返回原串;认可这个设计。
: 确认思路是每个字串都可以直接得到编码,之后用这个编码字串判断冲突就可以。
x*6
48 楼
二、每个字串可以编码为头尾字符和中间的字符数
例如
新春快乐万事如意
变成
新6意
实现方法给一个字典,一个字串,返回字串的编码是否在字典里面有冲突。
这个题好像当年叫i18n?
发现现在好多公司出老题
原字串:
春节快乐喜气羊羊羊年大吉
编码为:
春节快乐喜气3x羊年大吉
这个一两年前也好像也见到过,aabccc -》 a2bc3
赞面经
例如
新春快乐万事如意
变成
新6意
实现方法给一个字典,一个字串,返回字串的编码是否在字典里面有冲突。
这个题好像当年叫i18n?
发现现在好多公司出老题
原字串:
春节快乐喜气羊羊羊年大吉
编码为:
春节快乐喜气3x羊年大吉
这个一两年前也好像也见到过,aabccc -》 a2bc3
赞面经
m*m
50 楼
科长 我跟你把
M*y
51 楼
多谢分享.赞!
能展开说说 "多线程的一些常用模式实现"? 或者link,谢谢
能展开说说 "多线程的一些常用模式实现"? 或者link,谢谢
L*n
53 楼
好像是健身用的那个杠铃吧
y*u
56 楼
拿着弹弓排上
M*7
57 楼
首先感谢推荐以及陪同午饭的大牛哥,以及一直帮忙的美女!
本着同样帮同胞的精神回馈一下版面。
今天接到人力电话,说反馈还不错,但是很遗憾只能明年见了,不知道啥原因。
当时面试感觉挺好的,面之前就知道这个据点不怎么招人,不知道是不是这个原因。
电面两轮。
共五轮,有三轮和面试官谈的双方都很开心,其他的一轮也算中上,有一轮一般,但题
也做出来了。
所有题不是leetcode加面经覆盖过的,就是思路不怎么难的题。
不按照顺序上题
一、一道面经里面提到过讨论过,但是不太一样的。改用中文例子。
就是字符串编码解码。
编码规则是
原字串:
春节快乐喜气羊羊羊年大吉
编码为:
春节快乐喜气3x羊年大吉
两个情况下会有歧义:一个是原字串中的数字加x
之前面经提到的是用两个x转义,但是我遇到的要求是解码程序的逻辑不能改变。
此外还有压缩后前面的数字问题,比如
3羊羊羊开泰
变成33x羊开泰则解码程序会出错。
实际上这两个问题是一个问题,就是编码后源串中代表数字的字符恰好出现在数字加x
前面怎么办。
经过讨论,解决方法是将所有的领头数字编码例如:
3羊羊羊开泰
就编码成
1x33x羊开泰
要求尽量优化,也就是说只有歧义的情况下才将数字编码。
我给出的方法是扫描字符流(这个是限定的输入条件)同时维护一个窗口,然后随时判
断是否可以输出窗口,如果需要则对窗口做转义再输出。
二、每个字串可以编码为头尾字符和中间的字符数
例如
新春快乐万事如意
变成
新6意
实现方法给一个字典,一个字串,返回字串的编码是否在字典里面有冲突。
确认了字串是否一定在字典里;反问你怎么设计;我说如果在的话还是返回是否有冲突
,如果不在的话返回是否和现有的有冲突;认可这个设计。
确认字串长度不足3怎么办;反问你怎么设计;我说不足就是返回原串;认可这个设计。
确认思路是每个字串都可以直接得到编码,之后用这个编码字串判断冲突就可以。
实现很直接;写的时候,提到如果工作中遇到的话,一般要构建这个字典,所以可以保
留一个编码到字串的哈希表,用来直接判断。
对方听了以后让设计这个类的api。
三、
给定字串,输出第一个不重复字符的索引值
例如
0 1 2 3 4
羊年发羊财
输出1,因为羊重复。
其他题都是出过的就不说了。
总结一些要点希望有用。
. 每轮期待做出两题,其中第二题可能是变种,也可能是新题,而第三题一般让说思路
就可以了。我只有其中一面写了三题,大概是因为第二题的变种比较简单。
. 重点还是考代码,和对于算法分析的熟悉,会的思路要能写成简要工作的代码才有用
,如果说了很高深的算法一般也不会让写。
. 重视交流,包括开始有思路的时候要说,就算是有些明显的假定也要说出来,说几个
分支,如果这样如何, 如果那样如何,然后讨论;没思路或者有问题的时候要说,确
认哪些是对方的肯定要求,确认问题的存在,提出实例或者解决方法,当场试验也可以
,但是不要冷场;写代码的时候也要说,我这里要干啥,如何如何。 要特别注明一点
,对方的反馈即便是反问或反例也有可能是提示讨论或引导,不要反感,而要积极的针
对进行讨论。 还有就是面试官不可能准备所有可能的解法,有可能自己的解法不是预
期的,但你确定的话就可以讲解。
最近看大家提到年老色衰的马工准备和刷题的问题,随便说两句希望给大家一些信心:
我是年底时被人力联系,开始没太抱希望,后来过了电面开始准备,刷leetcode,去年
没用的年假都用来干这个了,前后折腾了1个半月,这里感谢一下老婆在这段时间的支
持!
以前也比较怵头刷题,开始刷的时候找简单的开始,刷起来了就有感觉了,第一遍12天
刷完,后来又过了2遍,到现在总来版上看看新题和大家讨论下思路。感觉leetcode上
的题真心不是变态的,刷一下练练编码基本功其实对工作也是有一定帮助的:
一是对于一些简便的方法api,以前不知道用的现在可以顺手使用。
二是一些便捷的实现工具例如链表假头这种简化实现的方法比较熟练了。
三是对一些具体的编码实例系统的掌握了,比如多线程的一些常用模式实现,这个正好
在准备期间用在了修一个公司的问题上。
此外虽然没被问到系统设计,但准备中了解的各方面知识和解决方法感觉挺有用的。
有些朋友可能家里老人小孩工作操劳的没时间没精力,如果不是完全忙到没时间体力,
刷题真心不是特别巨大的工程。
我不是大牛,但咬咬牙也刷过来了,比起一个同事年假在家没事干,某游戏打到50级,
还是有些用的,就算给自己多个选择吧。
有些刷题的个人经验: 实在太怵头的,可以从简单开始,找找感觉。比较有效率的方法
是按专题分类做,比如树,链表,动规等分类。做多了就会总结出常见套路,例如链表
无非是一个假头,一个反转,一个快慢指针几个常规动作,加上一些观察到的技巧。因
为时间原因没时间看G4G,但上面的动规讲的不错,还有计算几何的基本算法也有讲解
,看一下很帮助理解。每题想通搞懂后,留下笔记和注释,包括关于思路的,以及关于
细节的,这样下次再刷就简单了。明显属于思路难的题,稍微想一下想不出来就去搜一
下思路,不然自己想太费时间了。
面经里面的题很多来源不详,很多题都说不清,或者细节缺少太多甚至无法分析,这种
题看看就过了,不过可以把每次类似的放在一起,这样拼凑起来有时候帖子中会提到某
关键点,这样就能知道这道题的关键思路在哪里了。顺便说一句,其实面的时候感觉还
是编码的基本功,面经和刷难题主要的作用是提前分析不熟悉思路,减少临场想的风险
。有近期的高频题最好自己写一下,有的时候版面上说了算法名就过了,可自己写了会
发现在面试中自己写是不可能的,这种情况下最好能多讨论下,或者自己好好研究下。
看版面上有人抱怨中国人刷题搞坏了风气。
这次准备的过程中,我就回想起本人多年前面试时候,那时候还没有这种方便在线刷题
的网站,曾经被三问过的类似leetcode的题。当时还被问到一些概念题,感觉就是他们
在某培训学校学的概念,必须要按照他们设计的答案答才是正解,否则就一脸不屑。最
近朋友也有参加非CS专业考试的时候,看到三们拿着一叠厚厚的面经材料,估计是类似
于新东方爱西西这样的机构搞出来的。所以个人觉得刷题搞面经不一定是我们搞出来的
,始作俑者和现在的踊跃实施者并不一定是我们呢。
当然希望有机会奔向管理的同胞能够更多,不过由于各种原因可能不适合于所有人,所
以根据个人呢机会不同有条件做管理就做管理,有条件发展数量就发展数量,都能帮助
同胞把势做大一些,这样大家都能多一些机会。
祝大家职业发展顺利,合家健康幸福!
本着同样帮同胞的精神回馈一下版面。
今天接到人力电话,说反馈还不错,但是很遗憾只能明年见了,不知道啥原因。
当时面试感觉挺好的,面之前就知道这个据点不怎么招人,不知道是不是这个原因。
电面两轮。
共五轮,有三轮和面试官谈的双方都很开心,其他的一轮也算中上,有一轮一般,但题
也做出来了。
所有题不是leetcode加面经覆盖过的,就是思路不怎么难的题。
不按照顺序上题
一、一道面经里面提到过讨论过,但是不太一样的。改用中文例子。
就是字符串编码解码。
编码规则是
原字串:
春节快乐喜气羊羊羊年大吉
编码为:
春节快乐喜气3x羊年大吉
两个情况下会有歧义:一个是原字串中的数字加x
之前面经提到的是用两个x转义,但是我遇到的要求是解码程序的逻辑不能改变。
此外还有压缩后前面的数字问题,比如
3羊羊羊开泰
变成33x羊开泰则解码程序会出错。
实际上这两个问题是一个问题,就是编码后源串中代表数字的字符恰好出现在数字加x
前面怎么办。
经过讨论,解决方法是将所有的领头数字编码例如:
3羊羊羊开泰
就编码成
1x33x羊开泰
要求尽量优化,也就是说只有歧义的情况下才将数字编码。
我给出的方法是扫描字符流(这个是限定的输入条件)同时维护一个窗口,然后随时判
断是否可以输出窗口,如果需要则对窗口做转义再输出。
二、每个字串可以编码为头尾字符和中间的字符数
例如
新春快乐万事如意
变成
新6意
实现方法给一个字典,一个字串,返回字串的编码是否在字典里面有冲突。
确认了字串是否一定在字典里;反问你怎么设计;我说如果在的话还是返回是否有冲突
,如果不在的话返回是否和现有的有冲突;认可这个设计。
确认字串长度不足3怎么办;反问你怎么设计;我说不足就是返回原串;认可这个设计。
确认思路是每个字串都可以直接得到编码,之后用这个编码字串判断冲突就可以。
实现很直接;写的时候,提到如果工作中遇到的话,一般要构建这个字典,所以可以保
留一个编码到字串的哈希表,用来直接判断。
对方听了以后让设计这个类的api。
三、
给定字串,输出第一个不重复字符的索引值
例如
0 1 2 3 4
羊年发羊财
输出1,因为羊重复。
其他题都是出过的就不说了。
总结一些要点希望有用。
. 每轮期待做出两题,其中第二题可能是变种,也可能是新题,而第三题一般让说思路
就可以了。我只有其中一面写了三题,大概是因为第二题的变种比较简单。
. 重点还是考代码,和对于算法分析的熟悉,会的思路要能写成简要工作的代码才有用
,如果说了很高深的算法一般也不会让写。
. 重视交流,包括开始有思路的时候要说,就算是有些明显的假定也要说出来,说几个
分支,如果这样如何, 如果那样如何,然后讨论;没思路或者有问题的时候要说,确
认哪些是对方的肯定要求,确认问题的存在,提出实例或者解决方法,当场试验也可以
,但是不要冷场;写代码的时候也要说,我这里要干啥,如何如何。 要特别注明一点
,对方的反馈即便是反问或反例也有可能是提示讨论或引导,不要反感,而要积极的针
对进行讨论。 还有就是面试官不可能准备所有可能的解法,有可能自己的解法不是预
期的,但你确定的话就可以讲解。
最近看大家提到年老色衰的马工准备和刷题的问题,随便说两句希望给大家一些信心:
我是年底时被人力联系,开始没太抱希望,后来过了电面开始准备,刷leetcode,去年
没用的年假都用来干这个了,前后折腾了1个半月,这里感谢一下老婆在这段时间的支
持!
以前也比较怵头刷题,开始刷的时候找简单的开始,刷起来了就有感觉了,第一遍12天
刷完,后来又过了2遍,到现在总来版上看看新题和大家讨论下思路。感觉leetcode上
的题真心不是变态的,刷一下练练编码基本功其实对工作也是有一定帮助的:
一是对于一些简便的方法api,以前不知道用的现在可以顺手使用。
二是一些便捷的实现工具例如链表假头这种简化实现的方法比较熟练了。
三是对一些具体的编码实例系统的掌握了,比如多线程的一些常用模式实现,这个正好
在准备期间用在了修一个公司的问题上。
此外虽然没被问到系统设计,但准备中了解的各方面知识和解决方法感觉挺有用的。
有些朋友可能家里老人小孩工作操劳的没时间没精力,如果不是完全忙到没时间体力,
刷题真心不是特别巨大的工程。
我不是大牛,但咬咬牙也刷过来了,比起一个同事年假在家没事干,某游戏打到50级,
还是有些用的,就算给自己多个选择吧。
有些刷题的个人经验: 实在太怵头的,可以从简单开始,找找感觉。比较有效率的方法
是按专题分类做,比如树,链表,动规等分类。做多了就会总结出常见套路,例如链表
无非是一个假头,一个反转,一个快慢指针几个常规动作,加上一些观察到的技巧。因
为时间原因没时间看G4G,但上面的动规讲的不错,还有计算几何的基本算法也有讲解
,看一下很帮助理解。每题想通搞懂后,留下笔记和注释,包括关于思路的,以及关于
细节的,这样下次再刷就简单了。明显属于思路难的题,稍微想一下想不出来就去搜一
下思路,不然自己想太费时间了。
面经里面的题很多来源不详,很多题都说不清,或者细节缺少太多甚至无法分析,这种
题看看就过了,不过可以把每次类似的放在一起,这样拼凑起来有时候帖子中会提到某
关键点,这样就能知道这道题的关键思路在哪里了。顺便说一句,其实面的时候感觉还
是编码的基本功,面经和刷难题主要的作用是提前分析不熟悉思路,减少临场想的风险
。有近期的高频题最好自己写一下,有的时候版面上说了算法名就过了,可自己写了会
发现在面试中自己写是不可能的,这种情况下最好能多讨论下,或者自己好好研究下。
看版面上有人抱怨中国人刷题搞坏了风气。
这次准备的过程中,我就回想起本人多年前面试时候,那时候还没有这种方便在线刷题
的网站,曾经被三问过的类似leetcode的题。当时还被问到一些概念题,感觉就是他们
在某培训学校学的概念,必须要按照他们设计的答案答才是正解,否则就一脸不屑。最
近朋友也有参加非CS专业考试的时候,看到三们拿着一叠厚厚的面经材料,估计是类似
于新东方爱西西这样的机构搞出来的。所以个人觉得刷题搞面经不一定是我们搞出来的
,始作俑者和现在的踊跃实施者并不一定是我们呢。
当然希望有机会奔向管理的同胞能够更多,不过由于各种原因可能不适合于所有人,所
以根据个人呢机会不同有条件做管理就做管理,有条件发展数量就发展数量,都能帮助
同胞把势做大一些,这样大家都能多一些机会。
祝大家职业发展顺利,合家健康幸福!
M*5
60 楼
这个要赞。
w*a
63 楼
好面经,赞
e*a
65 楼
第一遍12天刷完??? 180+ lc problems???
c*w
67 楼
赞。 这些题看着还靠谱。那些面经说什么就用KMP的真的是当场就让实现出来??
M*7
69 楼
第一遍时候算上付费还只有162题。
其他的是后来随出随做的。
【162在 edmca (革命象暴风雨) 的大作中提到: 】
其他的是后来随出随做的。
【162在 edmca (革命象暴风雨) 的大作中提到: 】
M*7
71 楼
看面经好像有问kmp的 准备了一下
主要是那道最多重复子串的题要用类似的思路
如果考了也是够bt的。
如果不是故意黑 也许可以准备几个优化方案然后讨论实现吧 如果我们自己就知道坚持
kmp没有备选方案 那对方让写也不能算太离谱 如果对方点名让写感觉题出的不好 因为
考这种熟悉的就会 不熟悉就不会的是没啥意思。
amp在 codereview (codereview) 的大作中提到: 】
主要是那道最多重复子串的题要用类似的思路
如果考了也是够bt的。
如果不是故意黑 也许可以准备几个优化方案然后讨论实现吧 如果我们自己就知道坚持
kmp没有备选方案 那对方让写也不能算太离谱 如果对方点名让写感觉题出的不好 因为
考这种熟悉的就会 不熟悉就不会的是没啥意思。
amp在 codereview (codereview) 的大作中提到: 】
i*h
75 楼
同问
a*b
76 楼
wow
S*w
79 楼
二、每个字串可以编码为头尾字符和中间的字符数
例如
新春快乐万事如意
变成
新6意
实现方法给一个字典,一个字串,返回字串的编码是否在字典里面有冲突。
确认了字串是否一定在字典里;反问你怎么设计;我说如果在的话还是返回是否有冲突
,如果不在的话返回是否和现有的有冲突;认可这个设计。
确认字串长度不足3怎么办;反问你怎么设计;我说不足就是返回原串;认可这个设计。
确认思路是每个字串都可以直接得到编码,之后用这个编码字串判断冲突就可以。
实现很直接;写的时候,提到如果工作中遇到的话,一般要构建这个字典,所以可以保
留一个编码到字串的哈希表,用来直接判断。
对方听了以后让设计这个类的api。
这题目 什么意思
没看懂 :-)
例如
新春快乐万事如意
变成
新6意
实现方法给一个字典,一个字串,返回字串的编码是否在字典里面有冲突。
确认了字串是否一定在字典里;反问你怎么设计;我说如果在的话还是返回是否有冲突
,如果不在的话返回是否和现有的有冲突;认可这个设计。
确认字串长度不足3怎么办;反问你怎么设计;我说不足就是返回原串;认可这个设计。
确认思路是每个字串都可以直接得到编码,之后用这个编码字串判断冲突就可以。
实现很直接;写的时候,提到如果工作中遇到的话,一般要构建这个字典,所以可以保
留一个编码到字串的哈希表,用来直接判断。
对方听了以后让设计这个类的api。
这题目 什么意思
没看懂 :-)
c*0
80 楼
这个楼主好憨厚, 赞!!!新年大发啊!
w*t
81 楼
赞汉化面试题!
m*n
82 楼
多谢分享
M*7
83 楼
再举个例子说明
比如字串是
恭喜发财红包拿来
第一个字 恭
最后一个字 来
中间夹6个字
所以编码后就是
恭6来
如果字典是:
恭喜发财红包拿来
恭贺新禧好运常来
而字串是
恭喜发财红包拿来
则返回冲突,因为 恭贺新禧好运常来 的编码也是 恭6来
计。
【在 S***w 的大作中提到】
: 二、每个字串可以编码为头尾字符和中间的字符数
: 例如
: 新春快乐万事如意
: 变成
: 新6意
: 实现方法给一个字典,一个字串,返回字串的编码是否在字典里面有冲突。
: 确认了字串是否一定在字典里;反问你怎么设计;我说如果在的话还是返回是否有冲突
: ,如果不在的话返回是否和现有的有冲突;认可这个设计。
: 确认字串长度不足3怎么办;反问你怎么设计;我说不足就是返回原串;认可这个设计。
: 确认思路是每个字串都可以直接得到编码,之后用这个编码字串判断冲突就可以。
比如字串是
恭喜发财红包拿来
第一个字 恭
最后一个字 来
中间夹6个字
所以编码后就是
恭6来
如果字典是:
恭喜发财红包拿来
恭贺新禧好运常来
而字串是
恭喜发财红包拿来
则返回冲突,因为 恭贺新禧好运常来 的编码也是 恭6来
计。
【在 S***w 的大作中提到】
: 二、每个字串可以编码为头尾字符和中间的字符数
: 例如
: 新春快乐万事如意
: 变成
: 新6意
: 实现方法给一个字典,一个字串,返回字串的编码是否在字典里面有冲突。
: 确认了字串是否一定在字典里;反问你怎么设计;我说如果在的话还是返回是否有冲突
: ,如果不在的话返回是否和现有的有冲突;认可这个设计。
: 确认字串长度不足3怎么办;反问你怎么设计;我说不足就是返回原串;认可这个设计。
: 确认思路是每个字串都可以直接得到编码,之后用这个编码字串判断冲突就可以。
x*6
84 楼
二、每个字串可以编码为头尾字符和中间的字符数
例如
新春快乐万事如意
变成
新6意
实现方法给一个字典,一个字串,返回字串的编码是否在字典里面有冲突。
这个题好像当年叫i18n?
发现现在好多公司出老题
原字串:
春节快乐喜气羊羊羊年大吉
编码为:
春节快乐喜气3x羊年大吉
这个一两年前也好像也见到过,aabccc -》 a2bc3
赞面经
例如
新春快乐万事如意
变成
新6意
实现方法给一个字典,一个字串,返回字串的编码是否在字典里面有冲突。
这个题好像当年叫i18n?
发现现在好多公司出老题
原字串:
春节快乐喜气羊羊羊年大吉
编码为:
春节快乐喜气3x羊年大吉
这个一两年前也好像也见到过,aabccc -》 a2bc3
赞面经
M*y
85 楼
多谢分享.赞!
能展开说说 "多线程的一些常用模式实现"? 或者link,谢谢
能展开说说 "多线程的一些常用模式实现"? 或者link,谢谢
b*w
87 楼
感谢楼主分享面经 关于第一题有个疑问, 比如 输入值是 321bbbbbbbb, 输出值是
1x31x21x110xb 因为如果只是321x110xb 歧义依然存在啊
1x31x21x110xb 因为如果只是321x110xb 歧义依然存在啊
相关阅读
黑妞埋饭2000多只猫从湖北贩往广东 沪杭志愿者一路追踪(图) (转载)再为黑黑求祝福,希望手术平安顺利!哪位好心人能给推荐个狗狗医生,驻纽约皇后区苦恼,小狗咬人定了一个不是pet friendly的旅馆 (转载)cuteness overload (转载)真有能冲的猫砂吗?chewy出什么问题了?请问兔子的食量Veterinarian recommendtion needed (91791)后院有个兔子窝,怎么办?别人碗里的就是香啊 (转载)给推荐个干狗粮吧兔子吃什么蔬菜? 玉米生吃行不?猫 趴在猫粮袋子上睡着了砂盆去味神器猫狗同住,猫stress总是在床上小便怎么办转一篇跪求bless!!!!! Thanks a lot!!!!!!!!!!!!!!!!!!!!!!!!!!!