最近有d coding interview心得想分享吓, 不過講聲唔好意思先, 有NDA嘅緣故有d嘢唔可以講得太仔細/清楚
大概個settings係一個~1 hr 嘅coding interview, 問你一d現實無乜用嘅問題

我d interview 係python所以跟住d example同syntax會用python, 用其他language可以自己adjust
當interviewer俾條coding question你, 你第一時間其實唔應該落手code, 你係應該clarify條問題先, 確保你明白條問題係咩, 可以同interviewer快速go through一吓given example確保你知happy path同expected behaviour
之後可以諗test case先, 因為通常code完之後問你點verify你點code, 預先作定test case可以扮吓有TDD, test-driven dev concept, 一個大概一個鐘嘅coding interview我覺得有3種case已經好夠:
1. happy path, 最基本題目想要你做到嘅嘢, 通常係最簡單嘅
2. negative cases, 大概同1相反, 相反情況吓個program應該出d咩
3. edge case, 證明你諗嘢仔細
有d invalid input, 例如叫你計sum of integers array, 你可以輕輕問吓使唔使assume有null/non-numeric. 一般interview應該會同你講唔使特別處理, 留返d時間做main logic, 但你會show到你有個awareness
咁作完test case都唔好落手code住, 可以由comment寫起, 類似寫pseudo code咁layout你個skeleton先, 可以扮吓你平時寫code係well-commented

亦都同上面其他steps一樣, keep住同interviewer同步, 等佢可以及時修正你諗錯嘢
最後先落手code, 呢樣就無咩好講, 靠平時自己熟唔熟手. coding interview其實唔一定要syntax啱晒, 如果只係1-2句唔記得syntax可能快手google. 我試過做柒頭唔記得python list唔同queue, 就咁寫咗popleft, 其實只要interviewer明你意思都可以.
到最後interviewer問你點verify你d code, 你就將之前諗好d test cases dry run一次, 第一次happy path可以做詳細d, 證明你明自己寫緊乜同個main logic係啱. 之後negative case 同edge case可以飛快少少, pinpoint自己邊段code handle咗嗰d case.
最後注意幾點:
1. 平時自己d algo/ds, syntax自己學返熟啦

一兩句唔記得syntax用第2個mon google我覺得還可以, 全部syntax都唔熟就自求多福了

2. 注意時間,盡量都要做完happy path
3. 留意題目重點, 之前c4f提過吓如果唔係重點其實可以用現成api做慳返d時間, 例如人地叫你寫sort a list, 你就咁用sorted就唔啱規矩嘅

但如果題目重點唔係呢到, 例如經典leetcode 3sum就直接sorted慳d時間啦
4. [我主觀意見] communication > technical expertise, 唔係話technical expertise唔重要, 我個人感覺大概係6:4, 我比較睇重communication上你令到interviewer一直跟到你講咩. 之後syntax可以慢慢查, 但要係communication上show到你個logical mindset同分析問題嘅能力, 同埋其實都側面反映出你同其他人合作嘅能力
希望呢篇嘢對大家coding interview都有d幫助, good luck with your interviews

雖然有d嘢唔方便講太清楚

, 但有咩想傾吓問吓都可以擺低喺到, 抗拒tg gp小圈子就係想大家都可以集思廣益擺低吓自己諗法一齊學好d
