iT邦幫忙

2024 iThome 鐵人賽

DAY 28
0

練習不同的資料結構與演算法的 LeetCode 題目

「編碼面試」一般會詢問一個需要實作的問題,如:

給定一個整數數組(nums)和一個目標值(target),
請在數組中找出相加等於目標值的兩個元素,並返回它們的索引。

學習演算法跟資料結構

準備編碼面試不外乎就是上 LeetCode 刷題。但最好不要光隨機選題,而是把主要的資料結構和演算法做過一輪。

資料結構 (Data Structures)

  • 陣列 (Array)
  • 鏈結串列 (Linked List)
  • 堆疊 (Stack)
  • 佇列 (Queue)
  • 雜湊表/哈希表 (Hash Table)
  • 堆積 (Heap)
  • 樹 (Tree)
  • ...

演算法 (Algorithms)

  • 排序 (Sorting)
  • 搜尋 (Search)
  • 滑動視窗 (Sliding Window)
  • 雙指標/雙指針 (Two Pointers)
  • 最短路徑演算法 (Shortest Path Algorithm)
  • 動態規劃 (Dynamic Programming, DP)
  • ...

編碼面試的類型

線上測試(Machine Coding)

線上測試是讓受試者直接在網站上進行線上測驗。平台會針對正確性(correctness) 與效能(efficiency) 來核算分數。由於通過後可能還會有人工驗證,因此仍需要考慮程式碼的可讀性。

真人面試(In Person)

另一種類型是在面試官前即時作答,這種類型不要埋頭寫 code,多跟面試官討論。實作前最好先寫 psudo code 說明想法。
為什麼明明可以用機器考,卻要浪費錢安排一個人看著你寫程式?
除了避免作弊外,很重要的一點是能評估求職者是否為理想的合作對象。因此,若能在面試過程中展現出好的溝通能力,像是提出好的問題、清楚的表達自己的想法等,都能夠提高面試的通過機率。


文章同步發表於部落格中


上一篇
27. 怎麼準備面試:前端技術篇(technical)?
下一篇
29. 拿到 offer 了怎麼選?
系列文
前端自學轉職攻略:30個常見問題30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言