|
|
百度2012年面试题(含一二三面)8 T3 E- j0 \) Q3 Y" c- \& w
# A! ^* L# Z7 @# G X( \
6 W% {3 {& y5 b3 n5 I
最新百度一面
5 _8 j0 |8 h- T0 S2 P0 J
# q) R$ `4 r0 ]) dzz
; r4 s4 i6 ?5 F$ e* L+ j* T9 D- A, G! A5 A: K7 o/ S
^* {9 y/ z0 O$ _1. 网络编程经验:
" [- _" K! R- X. C 如何判断一个http请求,一个客户端请求已经结束;如何处理服务器多线程
* m$ ^& b+ j( _4 x. E* p6 B 获得一个http请求后,是如何处理的?返回什么?有没有试过返回图片?& p/ l) h5 p7 K4 \; r# g4 r
服务器给客户端请求时,是用什么函数写?服务器如何获取客户端请求,用什么函数$ s; O' v2 _, S' b6 K" U( O
(需要函数级别的连接有一个认识)8 J; b2 _( H2 m0 a. }" R
( k6 z0 m6 l. {9 E/ \3 i1 w
2. cv操作是什么函数 cv_init, cv_wait, cv_signal
' |# P0 A( R6 w* z6 k! L" I: P7 @& L4 T$ Z% }
3. 有一些关键词点击次数的文件,如何输出最多点击的一百个(当时应该回答,组织一个
$ ?* @7 {' q9 j- D) H: N$ S3 e4 o100个元素的最大堆)! p( U: i8 E; e, U1 U6 h8 V$ D
5 F3 t) {1 g& e7 X; i: s2 \3 ~
4. 相交链表,如何找相交点(不能要标记)
- `: Y" u+ N& I3 t, F R3 x3 K) H3 |* y$ Y% R! q/ Q, N
5. 有些文件,频繁访问在磁盘里头的,现在要放到内存中了。采用什么策略来决定哪些放/ r) K- i0 b2 I) q% A% w8 g( f/ ]
到内存中?
' f% G6 p& v& I. t
/ G3 O' p& B5 O& F( Q9 b) y6. c语言相关:内联函数的好处?非内联函数被调用的过程是怎么样的?
( M8 Q) y, F( R int,short,char的struct,这几个数应该怎么放,内存小?怎么防止头文件被include \& L; m" y: c, L- k
多次?% g. l6 @* ~+ _' P
. i- c$ j8 x1 @! u7. 有没有什么问题想问的
' {' A; e$ H/ }6 h" s0 Y) V" H9 i
' a! v! X9 _$ A2 N8 linux 网络查看的 g$ _; ]3 w! y
! {) s, W7 V# s; ^/ p% M
% S# h" n% e; a3 }% F" N二面:
/ R) s. Q% j) M. E( c& {0 L% A4 _4 T5 }* A
% R' }' s' Z) o
1. 介绍一个项目! g6 E( d4 ~' j
6 v, Q0 a- K! m6 j" }6 P
6 z( `. X! B, [# M! i7 \
/ f; t; B" l5 ?
2. 2.5亿个int数,可能有相同的。统计出这里头不同的数有多少个?只有2g内存。
$ t1 @$ J/ k* q" ~! A9 w(2.5*1000 000 000 * 4 =1G)
& M' w' d/ r1 h4 W) n
/ Z" H9 _, P# Q: \; E
0 P* I9 L" [" i: r0 W" L) I; X I& x) f- u5 h
3. 海量数据,在mysql中,cpu占用率很高。如何解决?
! Y; e' u8 b2 \: ]0 m# R4 V* l7 `3 Z5 W
1).show processlist,看哪个sql查询的多,建索引(问:建立联合索引时,要考虑什么,
$ \5 k$ V7 e$ e9 b( m怎么建(哪个在前,哪个列在后?)/ j- m+ j: @3 N' U: e+ Q
- a* t; L# q# |4 X8 B- x2).如果老是在拷贝到临时表,就改配置,把临时表内存改大些
j5 M; K F. j* a
( J8 j1 H$ y6 H3).还有什么方法:6 H0 J5 ~8 Y. o' V% G* Z* J
——7 m' `/ o6 d2 K
1)分布式数据库 (问:如果你来设计分布式数据库,你会怎么设计?)6 e6 R+ A8 m ~$ Z* v' r& Y' v( p
——
. p+ I8 A( p6 k. a5 E! J2)使用缓存 (问:如果缓存中的数据,被删除或跟新了,数据库怎么判断这个缓存的9 p3 \. h! b0 m% [
数据不能用了,是脏数据?)(不懂)0 K, V6 v" X4 [7 Q1 M" N; n
问:什么情况下cpu会高?(内存不足)为什么内存不足cpu会高(频繁io读写)
8 k+ Z: o3 g$ I0 |: m6 |! ]& `! r* A: q9 h4 q( @0 Z- F
6 S' F! `0 |! {
7 B) x' A# k% T% z* D0 `
4. n个无序int,(有正有负),给一个数v,如何找出其中的a+b=v的两个数5. 网络相册,一个人可以有多个相册,一个相册有多个图片,如何快速实现增删查移动等% e4 W! ~; Y2 y7 o
操作。web页面上,图片是翻页显示。3 D. I( R" @! S$ f e" b. g |
( _: ~3 R- \% y I/ o" Y
第五题我想不出好办法,我觉得一般他们都show thumbnail
6 [# s6 S6 q2 T5 A' j3 q就是预览小图片不把原始图片show在页面上,点击后才能看单个图片
^; \8 L6 Y, O, }6. Unix系统里,一个简单的print hello world的c程序,从./a.out执行到屏幕打印出来1 W* T9 g0 O9 \+ U0 [
这句话,是什么过程
* z# O& _) L2 U问:哪个进程来调用的main?(不知道)7.socket编程,要注意什么问题3 n$ ~- C' A) W+ M9 ]
8 ^( u) ~5 n @) E
& g3 `6 A0 M% D3面
( q: m5 d; g p6 C. A4 F9 ^, M! c9 O
1进程创建过程,
9 [4 L7 b3 {/ {. q
' h/ g4 d" f& q! K% [3. 主DB在接到数据更新后同步到后台DB,如何避免网络丢失之类的问题
$ P, q) L0 W$ O5 V' d: [1 a: O& O9 D% B4 D
4. N个bit,如其中有多少个1.(时间复杂度小于N)
+ o. ^1 h% D O5 o# B+ C+ d- \/ W$ G d# L2 ?% }
. H. ~9 [: P0 n3 _1 O7 r(信息来源网友MVParchitect)
1 p: }. X, Y* B5 g' n
& @ X$ Q& a. n, ]百度求职圈:http://aftjob.com/circle.php?cid=32
3 S4 \& t' I0 Y( d0 d+ G5 P( M- m) n$ e" G
3 y! e9 f; b+ t Y+ V5 N- ?: n
|
|