網易有道的篩選模式是先上機考試,然後根據上機考試選擇大概1/3參加面試。上機的平台和acm有點類似,提交**然後有手動閱卷。
上機考試時隔比較久遠,不過還能想起兩個題目:
1. 給定乙個點分ip位址表示,寫個程式把它轉換成相應的32位的無符號整數並輸出,如果輸入不是合法資料,就返回0.
這個題目如何利用好標準輸入輸出,其實可以很容易判斷出不合法的輸入用例,不過當時沒有想好,導致這個題目沒有ac。
後來回去寫的**如下:
#include #include bool checkpoint(char *str)
return npoint == 3;
}bool checkinrange(int addr[4])
} return true;
}bool convertip(char s, int addr[4])
//sprintf_s()
} return false;
}int main()
; int addr[4];
while(scanf("%s", s) != eof)
else
} return 0;
}
2. 給出大小為n的陣列,用最快的辦法找出前m個大的數字
這個題目可以用乙個大小是m的最小堆來實現,初始建堆用陣列前m個建好後,如果後面的元素a[i] 大於堆頂元素,那麼就刪除堆頂,插入新的元素。
#include #include using namespace std;
int main()
for( ; i < n; i++)
}}
面試官是乙個看起來比較技術的mm,mm上來什麼也沒有問,直接來演算法。
題目1.乙個人在網上做專案,加入每天都有很多專案可以選,每個專案都有乙個開始時間和截止時間,假設每個專案的錢是一樣的,那麼在n天內,如何安排自己的接活才能保證賺錢最多。
問題簡化後就是貪心的活動安排問題, 傳送門:
然後證明(想半天,沒有想出來)
問題2.假如這個時候,每個活的錢數是不同的,可以獲得最大的錢數是多少?
(我給的答案是列舉任務,然後做dp)
寫**....
#define max_tast 100
struct task;
bool taskinrange(const task &t, int s, int e)
int dp[max_tast][max_tast];
int ntask;
task atask[max_tast];
int getmaxvalue(int s, int e)
if( s == e)
int maxvalue = 0;
for(int i = 0; i < ntask; i++)
} }return dp[s][e] = maxvalue;
}
然後她問我如何優化,我說可以先把任務排序,然後搜尋到合適的任務豈止點,將列舉從o(n)降低到o(logn).
二面先聊自我介紹,簡要介紹之前做的專案
問題1. 寫**:判斷乙個數字序列是bst後序遍歷的結果,下面是我現場寫的**,沒有測試過
bool ispostorderofbst(int array, int low, int high)
int split = -1, i;
for( i = low; i < high; i++)
if(split == -1 && array[i] > array[high])
} if(split == -1)
return ispostorderofbst(array, low, split-1) && ispostorderofbst(array, split, high-1);
}
問題2. 寫乙個單件模式,然後順便被我引導到扯扯 執行緒安全 異常安全等話題,我不斷完善最初**使得滿足執行緒安全和異常安全。
下面的**大概是最初版本:
#include class singleton
singleton(const singleton &);
singleton& operator=(const singleton&);
public:
static singleton *instantialize();
static singleton *pinstance;
};singleton* singleton::pinstance = 0;
singleton* singleton::instantialize()
return pinstance;
}
然後大概擴充套件到如下形式:
class lock
~lock() };
class singleton;
singleton* singleton::pinstance = 0;
singleton* singleton::instantialize()
} return pinstance;
}
問題3 對c++ virtual的理解 . 我從實現角度給他說了 虛函式和虛繼承
問題4 如果有乙個websever,例如12306,使用者量特別大,**面臨效能問題,如何解決。
我先胡扯了執行緒池,然後又扯到多個機器搞這個問題等等
最後問一下我對什麼感興趣,他給我介紹了有道雲筆記。
和很多人分享了一些面試題目,感覺我面試的題目難度是比較水的,感覺其他同學面的都很難。有道說十一以後還會安排三面,是技術總監面試,估計也是終面了吧~
網易unity面經 有道
我面試的unity開發實習生,網易有道,今年第一次招人。1.你覺得unity單場景好還是多場景好?優質回答 2 xlua熱更新流程 4 動畫 我用的是dotween外掛程式 5 記憶體優化 6 unity的ar外掛程式有哪些?你都了解什麼?本人只會vuforia。更多請參考 以上回答都不是本人回答,...
網易2013校園招聘筆試題
第一部分 必做 計算機基礎類 25分 所有選擇題都是多項選擇 1.2分 假設進棧次序是e1,e2,e3,e4,那可能的出棧次序是 a e2,e4,e3,e1b e2,e3,e4,e1c e3,e2,e4,e1 d e1,e2,e4,e3 2.2分 表示式x a b c d e的字尾表示形式可以是 a...
關於網易有道 iOS二面涼經
執行過程 不同點2.block本質是objective c物件,是nsobject的子類,可以接收訊息。3.函式裡面只能訪問全域性變數,而block 塊不光能訪問全域性變數,還擁有當前棧記憶體和堆記憶體變數的可讀性 當然通過 block訪問指示符修飾的區域性變數還可以在block 塊裡面進行修改 4...