shanchen
shanchen

hi

2017 Mar-June Backend Interview Questions 後端面試問題

整理一下今年所有面試遇到的問題
These are the questions that I have encountered in the interviews this year.

還會問一些經驗問題,但沒遇過或沒做過就會跳過了,像是database 的redundancy
There were also some experience problems. Those I have not met or deal before, I will skip them, like Database Redundancy.

演算法與資料結構

Algorithm and Data Structure

  1. 現場實作資料庫裡一個單方向linked list 要怎麼樣找出重複節點,不用很多記憶體情況下
    How to find the duplicate node in a single linked list(has loop), use as less memory as possible
  2. 實作一個FIFO queue, push pop 任意insert皆O(1)
    Implement a FIFO queue, with push, pop and insert operation in O(1)
  3. 如果你要用的語言沒有Map,如何實作
    In the situation that the language you use does not have Map data structure, how would you implement it?
  4. Hashtree, Hashmap差異
    The difference between Hashtree and Hashmap
  5. 一個有url資料庫 找出出現次數最多的前k個url
    How to find k most frequent url in a database
  6. 一個數字陣列 找出最大的前k個數字 不需排序
    Find the largest k numbers in an array(no need to sort k numbers)
  7. 現場實作 Binary Search
    Implement the Binary Search(Use online code text editor)

System Design

做一個縮網址的網站,API如何設計
(面試結束後請寫好寄給他們,我是用django真的做了一個類似的 可以執行的網站,網路上有些類似project,但是很多設計跟自己回答的不同,主要是拿html跟view的架構,中間內容要改不少)
Make a url-shorten service, how do you design your apis?
(Mail them the code several hours after the interview. I had actually made a Django website. I modify the project from github which has different design to my answer. Basically, I take the code of html and view, and I make quite a lot changes in other parts)

System Programming

malloc() 這函數會做啥,詳細解釋
What does the malloc() do? Explain

Git:

git flow用法, pull fetch差別,如果master更新的話 要怎麼做才更新自己branch
git flow usage, difference between pull and fetch, if the master has an update, how do you update your own branch

URL:

給一個URL 每個component解釋一下
Given an url, explain every component

OSI model 七層

解釋連上一個網站發生甚麼事情(這題遇到兩次,被狂電)
Explain in detail what happens if you visit a website.(I have met this question twice…)

RESTful api

基本解釋,get post差異
Explain RESTful, difference between GET and POST

SSH

ssh -i 是在幹嘛
What does ssh -i do?

MVC

解釋
Explain

Javascript

解釋hoisting, event bubbling (我都跳過了 不會)
Explain hoisting, event bubbling( I skipped them all, have no idea…)

Mock object

如果要測試,不影響資料庫要怎麼做,別人api還沒寫好,要怎麼做
If you want to test your code, how would you do in the situation lacking api and not affecting real database.

Regular Expression

給一段,要解釋
Given a Regular Expression. Explain it.

SQL

count(*) 解釋
Explain count(*)

Python

Decorator

常見design pattern與範例
Common design patterns and their examples

Immutable, mutable差異
Difference between Immutable and mutable

Django Middleware解釋
Explain Django Middleware

Request, Response傳遞發生過程
What happens from sending a request to receiving a response

雙底線method解釋 主要講__new__() __init__()
Explain method started with double underscore like __new__() __init__()

CC BY-NC-ND 2.0 版权声明

喜欢我的文章吗?
别忘了给点支持与赞赏,让我知道创作的路上有你陪伴。

加载中…

发布评论