Re: [闲聊] interview 心得

楼主: DarkKiller (System hacked)   2014-07-31 11:52:25
※ 引述《DarkKiller (System hacked)》之铭言:
: * 请列出 RDBMS 里的 JOIN 有哪些。
对于有 SQL 经验的工程师,或是有 Oracle 证照的人,我预期能够列出几种
JOIN 方式。
新鲜人的部份,如果有带成绩单的话我会看一下有没有修过数据库的课程,有
些人有打工经验有写过这类 SQL query 的也通常答得出一些。
讲的出的人大多都会讲到 LEFT JOIN (left outer join) 或是 INNER JOIN。
: * 请说明数据库里 Transaction 是做什么的。
有修过数据库课程应该要讲的出东西来,就算只讲 atomic 特性也行。
非社会新鲜人,有讲出 BEGIN 与 COMMIT/ROLLBACK 也行,大多都是会说明
atomic 的特性。
讲例子也可以,大多数用例子的人都是讲出“银行转帐”的经典范例。
: * Primary Key、Unique Key、Index Key 的差异
我的预期是讲得出“一个表格里面最多有一个 Primary Key”。或是 Index
Key 通常是为了效能而设置。
我有遇过有人讲得出 Unique Key 与 PK 的其中一个差异:允许 NULL 得字段。
: * 数据库的“正规化”做了什么事情?解决了什么问题?
有讲到 data dedup 与 consistency 都算大概有抓到重点。
1NF 答的出来的人大多都是做过系统分析与系统设计的人,算是他们吃饭工具
的一环。(SA/SD)
: * Stack 与 Queue 的差异?
这是热身,大概是大一或大二教的东西,你在白板上画个三分钟总知道谁是先
进先出。
: * Priority Queue (Heap) 是什么?
这是白板上把 Stack 擦掉后,把 Queue 前面加上 Priority 这个字,然后补
充说明如果不知道 Priority Queue 的话可以拿 Heap 说明。
我发现很多人知道 Heap (但是忘记在做什么) 但不知道 Priority Queue,所
以后来问问题的时候都会拉出来讲。
也的确有人知道 Priority Queue 却不知道 Heap。
也有人如同推文讲的,点出 Heap 是实作 Priority Queue 的一种资料结构,
这位其他也答的很不错,已经每个礼拜吃下午茶一阵子了。
: * Tree、Binary Tree、Binary Search Tree、Balanaced B.S.T. 的差异?
问这个最主要要知道大一或大二学的 tree 还记得多少,实务上我们有一些程
式在追踪程式效能时也有用到。
我的预期是至少要知道 tree 与 binary tree 的差异。
: * QuickSort 与 MergeSort 的差异?
这题如果答得出东西来当然很好,但我另外一个很重要想要知道的目的是,如
果你不会还是一直掰,我会有负面分数。
另外这题也是在看面试者的临场反应,有些人的确只记得 QuickSort 与
MergeSort 的名字,但已经忘记所有东西了。
但这些人会说他记得 BubbleSort 与 SelectionSort,然后可以透过算法推
导出 O(n^2) 的时间复杂度。
: * 九九乘法表。
: * isPrime(n)。
: * GCD(n, m) 与 LCM(n, m) (最大公因子、最小公倍数)。
我的预期是前两题应该要写的出来,即使有 syntax error 也没关系,重点是
把问题在脑袋里想出算法,然后转成程式试着实作。
作者: linlin76 (linlin76)   2014-07-31 11:56:00
更想知道对于这样要求的薪资范围大概是多少?
作者: TonyQ (自立而后立人。)   2014-07-31 11:57:00
DK 在的某公司在高雄跟台北设点,我记得薪资待遇也还算不错
作者: oneheat (等待)   2014-07-31 12:04:00
这应该是那间会叫你写白板那间的人吧问tree的差异,不如告诉他几种tree,然后出个应用题,更能知道这个人的逻辑思考能力到哪
作者: wens (文思)   2014-07-31 12:13:00
"这位其他也答的很不错,已经每个礼拜吃下午茶一阵子了。" XD
作者: sunsamy   2014-07-31 12:31:00
不觉得会答这样的题目的人很会实做,没必然关系
作者: qrtt1 (有些事,有时候。。。)   2014-07-31 12:58:00
作者: bleed1979 (十三)   2014-07-31 13:07:00
我看原po大概没面试过ACM比赛的人吧,把低级当有趣。
作者: ufo0531 (UFO)   2014-07-31 13:07:00
我遇过你不试着乱掰就说你很容易放弃的
作者: calqlus (白梦の茧)   2014-07-31 14:31:00
考这种申论题还乱掰就有负面分数
作者: bndan (seed)   2014-07-31 14:35:00
乱掰和"尝试用破碎知识回答".老实讲还蛮难分的...
作者: Abbee (阿比)   2014-07-31 14:41:00
我遇过可以将这些讲得头头是道的人,但叫他coding,他就作不出来,只会想办法将手上的工作全往伙伴那里丢,再接收伙伴作好的成果至于那位很会讲的人,平时不是打瞌睡,就是到处聊天,顺便在伙伴背后放箭,说伙伴的能力很差,都要靠他教
作者: lovelycateye (我还想要更多力量)   2014-07-31 18:06:00
意图使人想吃下午茶啦~~~
作者: remmurds (Stronghold)   2014-07-31 20:43:00
把低级当有趣 +1
作者: atpx (秋雨的心情)   2014-08-01 23:01:00
有些东西其实都是死记的, 考太细也不会有鉴别度就算有实务经验也不见得都还记得不如问问为什么要反正规化? 有什么好处?考考SQL select的下法, 看看组出来是否够有效率

Links booklink

Contact Us: admin [ a t ] ucptt.com