您好,登錄后才能下訂單哦!
獻給目前為數不多的春招路上孤獨的iOSer:
背景: 雙非渣一本,2017級大三計算機科班,算法:劍指offer 68題刷了一遍,leetcode 60題。網絡、操作系統啥的 跟著書本學習然后Google查了些資料,然后大學期間做過一些有關iOS開發的實踐項目。
前言: 雙非本科菜雞的春招有些坎坷,還記得第一次面試(2019年12月12號),帶有一絲絲緊張的感覺跟字節跳動的一面面試官聊了56分鐘,當初沒復習啥,某學長的建議早面早知道問題所在,一路聊下來,還算是基礎問題都答出來了,后面問了一個LRU設計,由于沒接觸過LRU緩存算法,要我設計,就一路思考說了鏈表+map,時間復雜度沒達到要求,那個時候也沒想到用雙向鏈表(太菜了QAQ).再給我一道股票算法題,不加思考的說了n方的思路,要我優化,想了幾分鐘代碼也寫出來了。沒抱太大希望的給我過了。中間由于手機停機了(自己沒發現),hr還加了我微信約二面(被感動!!),17號二面全程被虐(聽說面試官是抖音那邊轉到這個部門的)。。幸好最后算法題也寫出來了,也讓過了。最后面hr面都過了。第一次面字節的體驗非常好
。后面過了一個星期多 offer 審批。 hr告訴我他們2020年計劃希望招資歷豐富的人。offer審批掛掉了。也算是很心痛啊。然后轉到字節的data部門(聽說是絕對核心部門),一二面3個小時下來(有點累),最后二面面試官給我了三個的算法題。我一個也沒寫出來(后面搜leetcode 算法題 都是hard難度)....就這樣第二次字節掛了。。 然后帶著遺憾過年了。。就開始刷算法題。開始準備春招了。
自我介紹
進程和線程區別,進程間的通信、內存分區。
內存堆和棧的區別、為什么堆上面效率高
liunx上有沒有寫過進程通信的代碼
www.google.com 之后發生了什么
Https 加密過程
tcp三次握手
swift struct 和class 區別
swift static與class關鍵字的區別
逃逸閉包與普通閉包區別
iOS 多線程GCD async與sync的區別
iOS 3張圖片下載完了之后合并一張圖
設計一個緩存機制(底層數據結構是什么樣子的)LRU
股票算法題(要求0(N)時間)
提問
多線程代碼之行情況 讀代碼寫結果
nonatomic 和 atomic 區別
atamic 線程安全如何實現的
nonatomic 一定是線程不安全的么
swift 數組切片是什么
swift extension的理解
翻轉鏈表
講講對這個程序的測試用例
最近公共父節點
提問
圍繞簡歷上的獲獎 還有獎學金成績方面問了些問題,還要一些實習時間問題。
一面
1 tableview 重用機制 滑動性能調優方法
2圓角效率問題 離屏渲染
3calayer 與uiview 區別 為什么這么設計
4swift 消息機制
5 多線程如何保證線程安全
6 mvvm與mvc的區別
7 你認為mvvm最大的好處
8 如何比較兩個浮點類型 為什么要這么做
9 進程和線程的區別 為什么切換線程代價小
10 如何實現進程間的通信
11 信號量 管道 共享內存 效率比較
12 設計模式你還了解哪些
13 詳細講一下觀察者模式、適配器模式、橋接模式
14 hppts加密過程詳細講一下
15 抓包原理
16 如何驗證加密過程的證書
17 同步異步 串行 并發 區別
18 最低公共父結點
二面
自我介紹
swift消息機制
swift比oc快在哪里
https加密過程
證書驗證如何進行
tcp如何進行擁塞控制 如何進行滑動窗口的大小變動的 根據什么
三道算法題,不太記得了。。
一面 75分鐘
自我介紹
項目 懟了45分鐘
app啟動流程優化
app包瘦身
設計題:根據文字長短動態設置cell
設計題:上面題目再加一個button button 文字內容長短不一
https加密過程
客服端是怎么證書驗證
http用了哪些協議
為什么8g大小的程序可以跑在4g內存上面
匯編函數調用的參數怎么傳的
如何提高上傳視頻大成功率 設計方案
算法題 :定義:給定a 計算出a各個位數之和 相加等于b 。現在給定b 求a
二面 45分鐘
自我介紹
項目 15分鐘
加載圖片卡頓是為什么 有哪些優化方案
圖片解碼時機
設計os的復制粘貼
假如現在有一個可以需要在三維中寫字并輸出結果的課題 怎么做這個課題 你的思路
算法題 數字轉漢字
自我介紹
棧和堆的區別
各種排序算法比較(冒泡、快速排序、歸并排序、桶排序、計數排序)
數組、鏈表、哈希表優缺點
uiview與calayer的聯系與區別 為什么uiview可以響應事件
tableview的重用機制以及與collectionview的區別
cpu和gpu的區別 離屏渲染
mvvm與mvc
項目亮點 野指針處理
內存管理
深拷貝與淺拷貝 如何進行類的深拷貝
一面 70分鐘
1.聊了下目前的情況以及經歷
2.事件傳遞與響應鏈
3.runtime機制聊一下
4.runloop的理解
5.mvc與mvvm的理解
6 gcd與NSopraretion的優缺點
7.tableview的理解重用以及調優
8.異步加載圖片原理
9.平常調試怎么做的
10.gpu與cpu 離屏渲染
11.網絡請求庫的封裝
12.內存管理 解決循環引用又出什么問題
13.循環引用出現的常見情況
14.autoreleas談談
15.timer為什么在子線程中不工作
16.為什么學iOS
2-25 二面
自我介紹
實習多久、學習過哪些語言
為什么選擇iOS、學習iOS最大的困難。
mvc和mvvm理解
了解哪些數據結構
散列表實現原理
iOS內存管理方式
了解哪些網絡協議
http 傳輸層用的哪個協議,版本問題
問了一些比較常規的問題
自我介紹
算法題: 兩個隊列實現棧
分類extension 在oc與swift區別
在什么時機加載(沒答上來)
oc與swift語言區別
tableview做了哪些優化
如何實現多個圖片下載后合成一張圖片
除了gcd group之外 其他方法
信號量與鎖的區別
mvc和mvvm的區別
為什么從swift開始學
如何學習iOS的
有什么要問的?(由于感覺不錯問了下評價)
1.評價
2.為什么UI只能在主線程刷新?
算法題:給定排序數組和一個值sum,找到兩個值 等于這個sum。
自我介紹
項目相關
tableview優化
app啟動流程
kvo實現機制
第三方庫Alaomofire 的核心
除了學習iOS還關注哪些技術
提問:
問了很多,都是聊天之類的。
@interface homeViewControler : UIViewController{someManager *_manager;}@property (nonatomic, assign) NSNumber *flag;@property (nonatomic, strong) NSString *name;@property (nonatomic, strong) UIButton *button;@end@implementation homeViewControler- (void)viewDidLoad{self.button.onClick = ^{if (self.flag) {self.name = @"the name";[_manager reloadData:self.name];}else{self.name = nil;[_manager clearData];}};}@end
- (void)someMethod {int i = 10;//__block int i = 10; dispatch_async(dispatch_get_main_queue(), ^{NSLog(@"%d",i);});i = 20;}
代碼輸出多少?如果用__block修飾i又會輸出多少?為什么?
1、使用遞歸,計算從1加到100的值
2、使用遞歸,計算從 n 加到 m的值
(n < m)
3、使用遞歸,計算從 n,n+t, n+2t, .... n+ mt 的值
(m >=1)
實現一個簡單的視頻播放App,用戶可以播放、暫停、或者拖動進度條,也可以在多個視頻源之間進行切換。
有一個第三方的視頻播放器SDK,提供一些基本的API: 1)prepare:初始化,傳入播放地址 2)play:開始播放 3)pause:暫停播放 4)seek:跳到某一時刻 5)release:停止播放并釋放資源 這些API都是同步的,可能會有耗時,并且該播放器對于調用的順序有比較嚴格的要求,例如連續調用兩次play,或者沒有調用play就調用pause,都會造成異常。
問題:如何實現這個視頻播放功能,使得用戶的操作能夠盡早得到響應,且不會造成異常。
問了很多問題,大概記得的就是:
手寫LRU、股票算法題
MVVM與MVC的比較
UItableView的性能調優
Auto layout的原理
GCD與NSoperationqueue比較
kingsiher圖像庫的異步加載原理
圖像解碼
事件傳遞與響應
閱讀過哪些第三庫源碼分析一下
由于過了四五天了 二面有些忘記了。
hr 一些常規問題,然后這個hr小姐姐好像還懂點技術,就追著我的簡歷不放,要我復盤項目,還要講下技術方面的點。
三面+hr面 都是電話面試,比較容易然后就忘記寫記錄了。估計是比較缺人叭,流程很順利
上來三道算法題,然后問了些項目的事情,算法做得還闊以,后面晚上給掛了,也心情復雜就沒記錄了。
由于拿了快手音視頻的實習offer 就無所謂了,順便面了下 聊了80分鐘左右,還共享屏幕看我寫代碼。 后面給過了,,等著復試,4-17日 騰訊提前批結束,流程變灰了,就沒參加了
如果你想一起進階,不妨添加一下交流群 1012951431
面試題資料或者相關學習資料都在群文件中 進群即可下載!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。