原文参考gist
https://gist.github.com/y2468101216/f928d459b91968d55cf7861bc0e6e99b
# 面试心得(2017/10)
顺序跟面试顺序无关
## 104人力银行 90W/Y
从 linkin 上找我的
一开始有 Codility 的测验,基本上跟 leetcode 很像,题目都是英文的,
一共有三题我只讲第二题,因为其他两题很简单无难度。
```
给你一个任意长度的一维阵列A,求A中两元素相减的最小正整数。
EX [1,8,3,10,15]
答案为 3-1 = 2
```
这个题目很明显的是座标轴上任意两点最近距离
-[wiki](https://en.wikipedia.org/wiki/Closest_pair_of_points_problem)
所以我暴力把他解掉了,wiki 上有暴力解,可以直接看。
所以虽然我有解开但是分数很低,时间部份扣得很严重。
通过了会叫你作一个多达500以上的心理测验,
里面有一些违反劳基法的题目,这个会要求你在面试前做好。
面试部份
一开始会是两个主管+工程师面试,基本上不外乎一些面试老梗问题,不多撰述。
工程师有问我 request life cycle ,一开始我还不知道他在问啥,我以为再问 php
life cycle,他后来有说是问我怎样决定哪些功能放在哪里?
比如说 login module 之类的要放在 middleware 或者一开始的 bootstrap
这边我回答不好,因为我根本没搞懂他的问题。
我有问工作内容,他们有说要做 open api 或者让我维护内部系统。
后来会换HR进来,因为我一开始在那等时就有拿104的福利介绍给我看,所以我没啥特别
问题要问。
他有特别问说我在 laravel conf 讲者的经验,并且提到说104也致力于 opensource 跟
鼓励员工当 speecher。
结论:感谢函一张
## 预约科技 90W/Y
上面写着 产品用 php7.1 + 20年软件经验创办人,让我有兴趣。
跟我约在星巴克咖啡厅,因为等等要到远传开会。
进去听他讲了一个多小时的商业模式,主要是作美容业的 ERP,
最后问他有没有问题要问我的,
他说我根据你的谈吐跟履历想必是没问题,直接给我口头 offer
我觉得有点不安,问他 RD 有几个人,
他说上一个 RD 生病住院了,只剩一个打工兼职的。
我说那不然我们先兼职合作。
兼职后才发现各种地雷,不会用 pull request , 没有安装文件。
后来帮他把安装文件做好后,跟他说修一个 issue 要 8000 元以后就没下文了。
结论 : 口头 offer,但不会去。
## 酷必资讯 90W/Y
作 line 官方帐号的公司。
一开始面试我的是工程师,我们一开始有讨论到 transaction 与下面这种的差异
```
这是从 fb backend tw 版主那学来的。
update tickets set user_id = 1, is_order = 1 where id = 1 and is_order = 0;
update tickets set user_id = 2, is_order = 1 where id = 1 and is_order = 0;
```
这是利用 database 不会 race condition 的特性去作的,我记得没错的话,这会比下
transction 来的快。
但他一直坚持这是一种lock,因为我也是没有深究所以就带过了。
他有提到要用 laravel 作底层,我以为是要写 laravel 的 package ,结果看起来应该
是一个 laravel 作网站的底层这样。
我有问自动化布署,他们说现在还是 ssh git pull,但有打算要做。
工作内容是打算作一个平台,部份取代现在接案,因为他们觉得大部分官方帐号要求的都
大同小异。
之后CEO进来跟我讲了新资福利,听起来没啥问题。
结论:感谢函一张。
后面还有三家要写,晚点在弄吧。
有人缺 senior php developer 的话可以找我。
有问题推文。
原文gist 挂了?看完才发现还没写完 所以原PO复制到编辑网址?或是没公开此gist 才导致看不了?
作者:
sorryla (Mr.东)
2017-11-07 04:58:00那个阵列是一维的,所以没那么复杂,直接排序后扫一遍差值找最小就好。
作者:
VdustR (京)
2017-11-07 09:23:00不算 lock 吗 QQ?
作者:
bach8517 (palela)
2017-11-07 11:10:00不是O(N)吗 @@哦,我想岔了
作者: xva (..............) 2017-11-07 18:05:00
不用排序 直接扫一遍或两遍都可以,O(n)
作者:
pttworld (批踢踢世界)
2017-11-07 19:49:00原题加个16解就改变了,一定排序的。
作者:
shiauji (消極)
2017-11-07 19:56:00最小的两个数字?1,100,101就掰了
作者:
ken9527k (来韩老师这边)
2017-11-07 23:10:00O(n)要怎么解?只想的到O(nlgn)
扫一次不用排序 不就O(n),需求没说阵列需要重复用
连这么简单的题目O(n)都想不到 难怪人家说台湾没软件业
不用非比较排序这种烂招 且在 n会非常大的情况下说有O(n)的... 呵呵
作者: freeandy 2017-11-08 07:39:00
O(n)的不出来解说一下吗?
不就说扫一遍找两个最小的相减 没很难懂吧求一个阵列最小值会吧?O(N);做法烂一点重找第二次找次小,两次加起来也是O(N)阿我看到错的Case了 抱歉
作者:
ken9527k (来韩老师这边)
2017-11-08 09:59:00你连题目都没看懂...是取任两数的差的最小值
作者:
TAKADO (朕没给的你不能抢)
2017-11-08 10:48:00想知道O(n)解法 +1
其实可以O(n)就是用radix sort 但那就要多用内存了
作者: flash5408 2017-11-08 14:30:00
Radix sort 理论上也不是O(n)...
作者:
blitzran (heromater)
2017-11-08 17:35:00等等任意两点最近距离是二维阵列吧?
作者:
shiauji (消極)
2017-11-08 21:30:00说O(n)的可以出来解说吗?