|
|
百度2012年面试题(含一二三面) m2 B; E$ M/ D& D" x
+ @ k R* I4 X& |" b( |5 h- e& X- c+ C( r! L8 j
最新百度一面
3 u: _: V- z# {9 E% J
$ a5 {/ r7 d. f& hzz+ |& F! ?+ N5 F* |2 R
* w# r8 E8 c6 T6 T6 E3 X$ q
3 ?2 [+ _) A2 K, `, I- K: W
1. 网络编程经验:
3 G& `3 K; L9 ^, ] p u 如何判断一个http请求,一个客户端请求已经结束;如何处理服务器多线程3 i7 J$ i p4 K" q2 o7 R' z2 p
获得一个http请求后,是如何处理的?返回什么?有没有试过返回图片?
8 w' r0 P6 [9 a3 i 服务器给客户端请求时,是用什么函数写?服务器如何获取客户端请求,用什么函数* r/ K: |; i! }. x7 R9 Y
(需要函数级别的连接有一个认识)* K W) d! M% {, O! U9 Y3 P
8 H/ f7 y; L* s- W, {* |* } F
2. cv操作是什么函数 cv_init, cv_wait, cv_signal* m. E/ k" [3 d; u8 h5 c' j
3 G: Z; S0 L Q- P& t, W
3. 有一些关键词点击次数的文件,如何输出最多点击的一百个(当时应该回答,组织一个1 n7 t, _. p0 U4 a* T ^
100个元素的最大堆)
4 L: n3 @4 e7 m* J2 p# ~5 C5 @
; T4 N; R, c, y* C8 h+ R4. 相交链表,如何找相交点(不能要标记)( k6 [1 B/ i( ?% B
3 Q: s1 j+ ?5 _" F' W, q
5. 有些文件,频繁访问在磁盘里头的,现在要放到内存中了。采用什么策略来决定哪些放
' ^2 t6 d X( S- ]9 e$ }. j到内存中?
# r! r5 F0 C5 F( z" e1 q& i+ j# `9 I S( P2 t/ f2 M
6. c语言相关:内联函数的好处?非内联函数被调用的过程是怎么样的?: N5 g) S! Z5 E9 X# x; K2 S4 Q
int,short,char的struct,这几个数应该怎么放,内存小?怎么防止头文件被include
; J0 {- B' d6 D) |! B6 n+ @多次?
# s$ ]% s/ Y: u' p
" M* q2 d3 Y! v D8 p- b% A+ c7. 有没有什么问题想问的
+ L( M$ Y- @8 o/ `% _" V9 n Q3 L$ T
8 linux 网络查看的
0 M: d; j# |9 f7 K& u8 {! }* y+ m8 ?1 g
. h0 s5 y, G. E! }+ J: D2 G
二面:
6 q3 h( V4 |+ n3 I. s- O+ U( }. x. X) [" H7 g8 G
* m/ N' ]! {9 N/ `1. 介绍一个项目$ J# F- t$ U* j7 k& A
- m" O/ X* m8 ~ r1 L% n& {$ h! m1 \/ f: j. `& U
' g3 z) ]; C# \9 c2. 2.5亿个int数,可能有相同的。统计出这里头不同的数有多少个?只有2g内存。& H, g0 i+ ]: G* O4 C
(2.5*1000 000 000 * 4 =1G)1 L* m( b7 T. N0 N% G: }- M0 ^+ V% E
, D6 d% |/ M, Z
8 v9 W4 V8 z9 I+ q+ V5 F* t- n2 ^) g! W' N9 {/ Y. |
3. 海量数据,在mysql中,cpu占用率很高。如何解决?
: F% e; _7 {( Q: Y
9 S7 y |/ w+ o" j( I* T f0 Z1).show processlist,看哪个sql查询的多,建索引(问:建立联合索引时,要考虑什么,2 \7 @0 G" I3 W* O
怎么建(哪个在前,哪个列在后?)
* ~- J' X1 G; i- m9 w
- H9 ~' s) t* m7 l% @, U2).如果老是在拷贝到临时表,就改配置,把临时表内存改大些7 Z3 [" ^! b9 s( w: Y' _* ?
; K4 T( S2 T5 L' G9 v$ ?
3).还有什么方法:
2 \" H/ y9 b5 V) A——
4 u# E$ k3 F) o4 e- _ l( y2 a1)分布式数据库 (问:如果你来设计分布式数据库,你会怎么设计?)
/ w2 i- V0 M, h: k1 Y/ U& H- |+ G——
* \1 r f* j! M9 ]& t# V2)使用缓存 (问:如果缓存中的数据,被删除或跟新了,数据库怎么判断这个缓存的
; q! ? ?+ v+ f/ Q数据不能用了,是脏数据?)(不懂)% ]. J' W( t1 ~, z
问:什么情况下cpu会高?(内存不足)为什么内存不足cpu会高(频繁io读写)
o/ H2 y1 m u- K, ~/ \% e4 r/ Z+ D3 H4 L+ W1 A/ Y
) t; q$ z- Q+ U/ _ o" k& n( k" E0 {1 A
* F. v) p- C3 j# F) o/ y q4. n个无序int,(有正有负),给一个数v,如何找出其中的a+b=v的两个数5. 网络相册,一个人可以有多个相册,一个相册有多个图片,如何快速实现增删查移动等( N9 u$ M l7 t
操作。web页面上,图片是翻页显示。' D1 E8 d; T% j3 h* F* R
M3 `" I8 Q/ J5 z5 d1 O9 S( W第五题我想不出好办法,我觉得一般他们都show thumbnail
4 R3 K$ t3 Z2 O! t就是预览小图片不把原始图片show在页面上,点击后才能看单个图片' P% q9 v4 {: h% ?* C: w2 S
6. Unix系统里,一个简单的print hello world的c程序,从./a.out执行到屏幕打印出来
* r ^; f1 P3 V$ ~* J这句话,是什么过程8 W! h T8 o( O3 q
问:哪个进程来调用的main?(不知道)7.socket编程,要注意什么问题
( H, S+ r4 C; |9 x: ?+ I! I. i( T0 t8 m- e5 Q( D1 t/ \+ c0 z! U
: L; z Q H! \, Y3面
( m8 n! L2 Z5 j- L
# J9 R( \5 a( B1 F9 S; \1进程创建过程,
1 K0 {7 d# [% B1 x' X ?2 h+ Y4 a/ i6 B, H( t3 {7 `: p
3. 主DB在接到数据更新后同步到后台DB,如何避免网络丢失之类的问题
. A7 D0 n* B- `& W
' }3 G" x- U: q7 r* W' y5 _$ N2 N0 [4. N个bit,如其中有多少个1.(时间复杂度小于N)
- t1 x+ w4 K9 R& k4 `+ c. j2 I- x/ Y* C! |7 Q
2 F# D# r- A; N2 d$ h1 w
(信息来源网友MVParchitect)
0 Z- y5 D3 M6 _! `3 P) i( J% D) b# R
- _8 n; ]9 F" Z1 T3 j百度求职圈:http://aftjob.com/circle.php?cid=32
% T7 C6 A, ]' j' V) e# ]8 ~ L5 O1 s3 U& \$ E
3 n1 ^; d; V2 f* R3 P |
|