百度面試經(jīng)驗
百度電話面試經(jīng)驗
我是周四接到百度的電話面試通知的,因為當時正在移動公司上班,說話不是很方便,直接提出改天進行面試(大家基本都會這樣做,例如第二天再進行,自己好可以準備一下),而我直接提出在周六面試,感覺推得有點時間長了,可能給公司的感覺不是太好,我自己也有些后悔,但事已至此,只能這樣了,
百度面試經(jīng)驗
。周五還是上班,根本就沒準備,直到周六早上讀完英語才大概看了一點東西,真的是花時間太少了,自己忙這也不能算是借口,還是自己沒有太重視,畢竟這也是自己心儀的公司,怎么能這樣對待它呢,如果失敗了,自己可能會后悔一輩子,大家可要注意啦,對任何自己想去的公司可要做最充足的準備呀,我這可是前車之鑒呀!進入正題:
周六上午10:30,百度的招聘人員打過來電話,并且提醒可以總座機接電話,這點還是比較人性化的。下面是正式的面試環(huán)節(jié),分3大部分:
1. 首先問你最大的項目經(jīng)歷是什么,其中涉及到很多的細節(jié),特別具體。他會問你的職責是什么,根據(jù)具體的職責回問更詳細的問題,例如我說我是一個項目組的小組長,他就問我怎么管理項目組,怎么安排的進度、人員,遇到過什么問題,怎么解決的,你們項目中做的最出色的東西是什么,怎么實現(xiàn)的。還會根據(jù)你的回答,往下引伸,比如問了我軟件是怎么進行版本號管理的,是用什么軟件進行管理的嗎,我不太清楚這些,這就很尷尬了,就是盡量多的準備各個方面知識吧,估計詳細準備一兩個項目也該夠了。再就是這其中可以把話題引向你準備好的方向,但要把握住分寸,別搬起石頭砸了自己的腳呀!我就順便提了一下我們現(xiàn)在做的項目,可能是做了一段時間比較熟悉其中的一部分內(nèi)容,想和招聘人員炫耀一下,但是人家問了我別的方面的問題,自己不會,這可丟大人了,所以以后大家要做類似的事情一定要把握住話題的方向,別順著招聘人員的思路走,要不我們會死的很慘的。
2. 詳細討論筆試的題目?赡茴}目少的話,他會和你逐題討論。他會問你:你認為你的算法怎么樣?還可以有什么改進?然后他提一個算法方案,讓你分析給他聽,比較這2個方案優(yōu)劣,他會提出一些其中可能出現(xiàn)的問題,讓你分析,可以怎么解決,然后順著你的方案,找一些不好地方,再讓你找方案分析給他聽,反正就是非常重視細節(jié),你從宏觀上答給他聽,他是不會滿意的,會一直問你的,可能知道你啞口無言,所以在面試之前,要對筆試的題目好好的準備一下,這點我認為極其重要。
3. 問你以后的人生規(guī)劃,當時給我提供了2個方向,一個是開發(fā),另一個是統(tǒng)計,因為我不知道這2個方向的職責是什么,所以也不知道選什么,就胡亂選了一個,然后他解釋了這兩個方向的具體職責,我認為剛才說的不合適,就改了一個,這樣好像不太好,變得也太快了,所以在面試之前要清楚各個職位的職責,也要盡早確定自己的目標,別給人一種拿不定主意的感覺。
最后,結(jié)束,應該對招聘人員表示感謝。
這可是我的第一次面試,就用了電話面試,不是很舒服,應該盡量放松吧,只有放松才能做好,才能得到自己心儀的職位,否則只能適得其反。
百度面試經(jīng)驗分享
一面:
給你一棵二叉樹,如何判斷它是否是完全二叉樹? 最開始我連完全二叉樹的定義都忘了,面試官提醒我之后我才明白是啥,
資料共享平臺
《百度面試經(jīng)驗》(http://www.msguai.com)。。汗。我當時回答的是先把它轉(zhuǎn)化成數(shù)組的形式存儲(就是2*n存左孩子,2*n+1存 右孩子的存法),然后循環(huán)判斷一下是不是所有的結(jié)點都是在數(shù)組的前m個位置。給你一個數(shù)組,求它的一個子串,使該子串的和最大。 這是典型的最大子串和問題,我直接就說這是個經(jīng)典的`動態(tài)規(guī)劃問題:令F[m]表示以第m個數(shù)為結(jié)尾的所有子串中和最大的子串的子串和。則若F[m- 1]>0,則F[m]=F[m-1]+a[m],若F[m-1]<0,則F[m]=a[m]。求出所有F[m]中最大的一個就行了。
vector是如何實現(xiàn)的? 這個簡單到爆了,我寥寥幾句說完了。
C++里,虛函數(shù)是如何實現(xiàn)的? 我一聽就明白想說的是vptr和vtable,直接說:如果一個對象含有一個以上虛函數(shù),則它的對象中有一個vptr,指向該對象所屬類型的虛擬函數(shù)地址表(vtable),這樣,就能根據(jù)一個對象的實際類型來確定要執(zhí)行的函數(shù)地址了。
C++里動態(tài)申請一個數(shù)組是用的int *p=new int[10]類型的方法,而銷毀時,則是用delete [] p ,請問,delete時,沒有指明銷毀空間有多大,它是如何知道要delete的數(shù)組是多大的?如果你來設計C++,你會如何來實現(xiàn)? 這個我之前確實沒思考過,我想了會兒,說可能是new時在前面多申請出幾個字節(jié),用來存該申請出區(qū)域的大小。這樣,返回的p可能不是申請出的首地 址,delete時,用p往前幾個字節(jié),就能知道數(shù)組有多大了。后來網(wǎng)上查了查,似乎確實是用差不多的方法實現(xiàn)的。
給你一個隨機數(shù)發(fā)生器,它有p的概率生成0,1-p的概率生成1,現(xiàn)在讓你設計一個隨機數(shù)發(fā)生器,有1/2的概率生成0,1/2的概率生成1. 這個想了好一會兒沒想出來好方法。后來面試結(jié)束后,讓大二大三的想,他們找到了個方法:用給出的隨機發(fā)生器,隨機生成兩次數(shù)字,由于先1后0和先0后1的 概論是相同的,都是p(1-p)的概率,所以,如果先1后0,就輸出1,如果先0后1,就輸出0.如果同1或者同0,就重復試驗,直接兩次生成的數(shù)不相同 為止。
給你一棵樹,并給你兩個結(jié)點,如何求它們的最近公共祖先? 我一聽最近公共祖先(LCA問題),直接說能用tarjan算法來算,然后他又讓我說明具體怎么算,我想了好一會兒才想清楚具體的過程。說完才意識到他現(xiàn) 在只是問求一次最近公共祖先如何求,我又說,如果只求一次的話只需要簡單的一次搜索就可以了。。而求多次的話,每次都搜索太慢,可以用上面說的 tarjan算法或者用一次搜索先轉(zhuǎn)化成+-1RMQ問題來求解。
請詳細說明如何使用socket。 這個我以前我用C語言和C#都寫過socket程序,所以對這個很是熟悉,又是直接說了一通。
TCP和UDP的區(qū)別是什么? 我說TCP是面向連接的,UDP是無連接的。
請詳述TCP的三次握手的過程 這個我當時確實不會,就直接說沒了解過。
關于虛擬內(nèi)存管理,說說你的看法。 這個,我當時不太了解,不過猜測和cache管理比較類似,然后就按cache管理答了些東西,后來看看,大致還算比較靠譜。
你有什么問題想要問的沒有? 這個說是問題也可以算是個問題吧,我就隨便扯一點點,然后幫同學問問一個同學為什么還沒接到電面通知,他說他會幫我問問的。
然后,面試完和面試官閑談了談,談到我在大連理工參加的大連賽區(qū)的ACM比賽,面試官似乎之前在大連理工上過學,他說似乎大連賽區(qū)這個比賽的申辦和他還有些關系…
【百度面試經(jīng)驗】相關文章: