前言 git
=========面試
最近春招一直在緊張的面試中,如今已經拿了頭條offer,因此也沒那麼緊張了。決定把面試題拿出來給你們分享一下,歡迎你們來一塊兒探討。如今先簡單的分享一下面試題。算法
記不太清了23333數據庫
主要問項目的一些技術點編程
如何讓一個label靠左,一個label靠右,而後右邊的label可以徹底顯示json
算法奇數排在前面,偶數排在後面後端
智力題,一個騎手送餐,ABCD商店,送給abcd四我的設計模式
kvo的實現原理數組
消息調用的過程安全
get和post的區別
http有哪些部分
tcp和udp的區別
七層模型
講一講響應鏈
如何經過一個view查找它所在的viewController
如何擴大view的響應範圍
微信分享大圖如何實現,從進程的角度
進程間的通訊方式,並舉例
兩個進程分別指向同一個地址空間並初始化一個值,分別輸出是什麼
算法,判斷一個字符串是否全部的大寫字母都在小寫字母前面
修改podfile文件後,怎麼用git diff顯示出修改後版本和當前版本的不一樣,讓我來設計
程序執行的過程
若是想要刪除本身的一段代碼,如何刪除(在程序執行的過程當中刪除)
用過腳本編程嗎
瞭解先後端嗎
各科成績,成績排名
做爲一個開發者,有一個學習的氛圍跟一個交流圈子特別重要,這是一個個人iOS交流羣:761407670 進羣密碼000,無論你是小白仍是大牛歡迎入駐 ,分享BAT,阿里面試題、面試經驗,討論技術, 你們一塊兒交流學習成長!
如下資料在羣文件可自行下載!
先介紹了項目,而後問了一些項目中的問題,而後開始問基礎
屬性的關鍵字
淺拷貝和深拷貝的區別
Block的循環引用、如何解決、原理
三種Block
Block和delegate的比較
kvo的實現原理
Autorelease pool的實現原理
消息轉發機制
線程死鎖的四個條件
進程和線程的區別
持久化
還問了數據庫的知識我當時說我全忘了就沒問了
中途還討論了massonery的約束應該寫在哪裏,我說應該寫在layoutSubViews,他說會調用屢次,而後爭論了一下子
介紹項目
性能優化
YYModel和AF源碼
如何本身設計json轉model
架構
迷之算法題
image.jpeg
一個安卓的面試官。。。。。
主要問了項目的一些東西 和給一些場景問我如何實現
自我介紹 介紹一些項目難點
主線程是相對於什麼而言的
一張圖片的內存佔用大小是由什麼決定的
索引的做用
索引的優缺點
在數組中找最小的k個數
淘寶下拉加載更多如何優化
淘寶頁面發送HTTP請求的過程
介紹一下MVVM
知道哪些設計模式
MVC的一些缺點
講一講其它架構
你知道哪些編碼方式
算法字符串翻轉
HTTPS
多線程的方式和它們的區別
隊列和線程的關係
一道線程安全的題
有哪些鎖
屬性的關鍵字
assign能夠用於OC對象嗎
copy和strong的區別
weak如何實現自動賦nil
爲何不可變對象要用copy
assing可使用在對象中嗎
Pod update和pod install的區別
layoutIfNeeded和setNeedsLayout的區別
抓包工具抓取HTTPS的原理
isEquel和hash的關係
SD的源碼
bitmap的結構
可變數組的實現原理
如何hook一個對象的方法,而不影響其它對象
如何避免if else
自旋鎖和互斥鎖的區別
介紹項目,主要介紹本身強項一點的地方
數組cop后里面的元素會複製一份新的嗎
數組的淺拷貝與深拷貝
TCP爲何是三次握手和四次揮手
基本就是走走形式了,主要就是問了一些我的方面的東西。。。。。
介紹項目的網絡層
爲何要使用HTTP???爲何不直接用TCP
如何保證HTTP傳輸到達
HTTP頭部有哪些內容
講一講擁塞控制
MVVM如何實現綁定
block和通知的區別,分別適用什麼場景
算法。連續問了好幾個,都是數組,層層遞進的,可是我忘了,只記得最後是找出數組中重複的數字
進程和線程的區別
程序在運行時操做系統除了分配內存空間還有什麼
進程間通訊的方式
如何檢測應用是否卡頓
好像沒多少問題了,記不太清,而後他說完了,我感受好快,覺得要掛了,就強行講了些runloop和性能優化的東西,而後他說好了,你和下一輪面試官再說吧
OC中對象的結構
多態
Ping是什麼協議
知道MTU嗎
TCP頭部多長,IP呢
線程同步的方式
iOS中有哪些鎖
MVC和MVVM的區別
瞭解哪些設計模式
存一個通信錄,包括增刪改查,用什麼數據結構
看過哪些源碼,講講思路
兩個鏈表找第一個相同結點
字符串旋轉
找鏈表的倒數第k個結點
把一個鏈表比某個值大的放在左邊,比它小的放在右邊
二叉樹的中序遍歷,非遞歸
百度一面
我也不知道爲啥個人簡歷會被一個作底層開發的部門拿去,而後面試很尷尬,全是計算機基礎
大概回憶一下
進程和線程的區別
一個進程有哪些區
擁塞控制
進程間通訊的方式
七層模型
TCP和UDP的區別
傳輸層和網絡層分別是作什麼的
UDP能夠實現一對多??
算法 求數組的最長子數組
Http2.0如1.x的區別
寫在最後
以上的面試題確定是不完整的,只能根據個人印象記錄我能想起來的了,並且即時是一個看似簡單的題,你若是沒有真正弄明白它的原理的話,在面試過程當中你也頗有可能被問懵,因此必定要打好基礎,要知其然並知其因此然。
喜歡的話能夠點個贊:+1:或關注。
====================
做爲一個開發者,有一個學習的氛圍跟一個交流圈子特別重要,這是一個個人iOS交流羣:761407670 進羣密碼000,無論你是小白仍是大牛歡迎入駐 ,分享BAT,阿里面試題、面試經驗,討論技術, 你們一塊兒交流學習成長!