遊戲開發面試總結2

2022-08-24 10:03:11 字數 877 閱讀 1333

總結一些面試常問的吧

1:聊一聊虛函式吧

c++中,虛函式主要是實現了多型機制,簡而言之就是用父型別的指標指向了子型別的例項,然後通過父類的指標去呼叫子類的成員函式。

每乙個含有虛函式的類都至少有乙個與之對應的虛函式表,存放著這個類所由虛函式對應的函式指標。

虛函式表在構建的過程中的步驟:

1:拷貝基類的虛函式表

2:替換重寫的虛函式指標

3:追加子類的虛函式指標

這些步驟是編譯器完成的

2:虛析構函式:虛析構函式使得在刪除指向子類物件的基類指標的時候可以呼叫子類的析構函式達到釋放子類中堆記憶體的目的,防止記憶體洩漏

當delete父類的指標時,由於子類的析構函式和父類的析構函式形成多型,所以先呼叫子類的析構函式再呼叫父類的析構函式。

純虛函式:形式為virtual void fun() = 0; 不需要實現,因為不會被呼叫到

抽象基類:至少有乙個純虛函式的類,抽象基類不能產生改類的物件,但是可以有這個類的指標或者引用;子類中必須將純虛函式實現,否則子類也是抽象基類

3:聊一聊堆排序吧

堆排序分為兩個步驟:

1:根據初始的輸入資料,進行heapadjust形成初始堆

複雜度為o(n),包括比較和交換 公式可以寫為s = 2^( i - 1 ) * ( k - i ),2^( i - 1) 表示該層上有多少個元素,( k - i) 表示子樹上要下調比較的次數。可以求得s = 2^k -k -1 , log(n) =k帶入得到s = n -lgn -1

2:通過物件交換和重新調整進行堆排序

複雜度為o(nlgn) log2 + log3 + ... + logn ≈ log(n!) 和 nlogn是同階函式

堆的應用場景:找top k , 實現優先佇列等。。

遊戲開發面試總結4

今天面了一家遊戲公司,感覺自己每次面試的時候都會有好多東西表達不出來。唉,做個記錄吧 1 這個是面試時候出的第二個筆試題,我覺得挺好的,可能是因為緊張吧 直播敲 沒寫出來。題目是這樣 給定乙個二叉樹,節點包含有左子樹,右子樹和父節點指標。讓在o 1 的空間複雜度下遍歷這個二叉樹。思路就是,中序遍歷吧...

Linux Linux開發面試總結

1.什麼是linux linux是一套免費使用和自由傳播的類unix作業系統,是乙個基於posix和unix的多使用者 多工 支援多執行緒和多cpu的作業系統。它能執行主要的unix工具軟體 應用程式和網路協議。它支援32位和64位硬體。linux繼承了unix以網路為核心的設計思想,是乙個效能穩定...

騰訊後台開發面試總結

linux和os netstat tcpdump ipcs ipcrm 如果這四個命令沒聽說過或者不能熟練使用,基本上可以回家,通過的概率較小 這四個命令的熟練掌握程度基本上能體現面試者實際開發和除錯程式的經驗 cpu 記憶體 硬碟 等等與系統效能除錯相關的命令必須熟練掌握,設定修改許可權 tcp網...