找回密码
 加入后院

QQ登录

只需一步,快速开始

搜索
查看: 1043|回复: 0

[其他] 2009百度实习笔试题

[复制链接]
发表于 2012-4-16 12:01 | 显示全部楼层 |阅读模式
2009百度实习笔试题
8 F. i3 T7 s. |* N: Z) d5 r, |5 g  p. y4 d3 T
! j2 Q" ^; p7 a* t2 T
. v8 ~/ x- d6 _. [( B" M0 d
9 }: |: t1 X0 F3 E* w# v
一、编程题(30分)
/ E" U5 `, l9 J$ Y$ h0 x输入:N(整数)
2 B7 P$ ]. W9 Z4 k1 Y+ f4 d输入:数据文件A.txt,不超过6条记录,字符串长度不超过15个字节/ Z9 y) ~1 `5 r' x5 j
文件格式如下:
0 J3 [8 E6 ]# [% y) H字符串\t数字\n
) @( {: J- z0 `- P7 Q1 B! @! a4 |4 _/ v3 ~8 ?8 k* ~& L& a
说明:+ {0 d% ^% d, Y" E+ K
每行为1条记录;字符串中不含有\t。  X  B0 e" L/ G9 c1 g0 v( ?* }: B; Y
数字描述的是该字符串的出现概率,小于等于100的整数。; }4 B7 o6 q) C5 G" ]1 r
多条记录的出现概率之和为100,如果A.txt不满足该条件,程序则退出;( [' J. G2 W/ K/ U: o, e, q; |
如果文件格式错误,程序也退出。
' O+ g, b# i  |  |: [2 F+ J% w& Q( `+ D  W  f. [* [% g) |
要求:- ^& [& n1 L8 S; I
编写一个程序,输入为N(正整数),读入文件A.txt,按照字符串出现概率随机
7 ~( Y( ?$ S8 x7 y- v) I" x+ H: F3 `) `& c6 H
地输出字符串,输出N条记录
1 g1 A5 \  t3 `3 Y1 D2 H4 q8 }8 L- E0 X! B
例如:
8 C0 q4 o- D1 n输入文件A.txt
; C: u9 [. }: D; G+ S2 uabc\t206 O1 U; n& \( Z
a\t30
- `' d; ^1 _9 o/ F2 [. N! s: \de\t50
7 Z& S' }* G$ y) D5 P输入为:10, H2 I# Q4 z) U

; O' ]1 ^0 l% a8 u9 P即 abc有20%的概率输出,a有30%的概率输出,de有50%的概率输出,输出10条记
0 [. }% I3 T) ^# C# b& n  ]
, Z+ _, `. }" l- U8 {. Q
! p7 v! X! R# P* f4 F以下为一次输出的结果,多次输出的结果可能不相同。
# j9 U* P$ o+ _: k" Q, ^abc
2 v* j0 b" w$ N! `0 [1 {: d  Aa8 X* Q( [# Y& R( m
de
5 r3 J/ a  p4 G* I* ^de3 ^2 B" W6 ^, q
abc) L2 X4 D# u, \7 Q' G5 N: P
de5 d. M4 q+ R2 w; C- s, s
a
" @/ ?' U; X" X) D0 ?8 _7 Fde
. T1 V, L1 E$ d- A: va5 b/ T7 b8 U6 i+ ~
de
) B. J* I9 r) S. t# ~% M2 Y) g7 K" d# Z! f2 [0 |' Z. A/ v6 I
二、算法题(35分)
& Y" ]1 X4 g, c2 s2 ^( O题目描述:  E2 H" P( F" o% b" l% [) _0 l
设有n个正整数,将它们联接成一排,组成一个最小的多位整数。
. j5 h# \9 p1 \7 i1 a9 z2 \5 _: G" F7 k
程序输入:n个数
9 {% c9 \% H7 |5 ^! {程序输出:联接成的多位数
  s4 A" {7 ^" Y; `
5 r$ D$ Z- ]& F2 o9 R& u2 f/ a例如:( U2 U, d6 W' w; |+ D+ ?8 V
n=2时,2个整数32,321连接成的最小整数为:32132,% C  p7 @8 @+ h) y4 y
n=4时,4个整数55,31,312, 33 联接成的最小整数为:312313355
: G5 G+ B% k0 D. q  ]# ~/ N
5 Z0 p1 n3 f  ]/ q, v/ \' ?5 R[题目要求]
- Y$ \2 A1 b& h4 t! W! D; T# i1. 给出伪代码即可,请给出对应的文字说明,并使用上面给出的例子试验你的算0 |1 f7 H* z( e$ H; ^$ e

7 P+ ~/ s0 ^& U+ @  |- w# T法。
  E$ [% E( ]( ]+ W( |2. 给出算法的时间空间复杂度。7 O9 T, f" y1 Y! B; V. h" J
3. 证明你的算法。(非常重要)
) ^) i1 ]( F+ e: `6 }% I) ~: _  b. [4 H" M& n
三、系统设计题(35分)9 A; s/ a& K5 G5 T; I
在一个有1000万用户的系统中,设计一个推送(feed)系统。以下是一些预定义概
3 D& L9 `- w; C9 H* i& X* E6 v2 o) n1 y/ h
4 e% L; G1 Y2 k7 X3 Q
1、用户:在这个系统中,每个用户用一个递增的unsigned int来表示user id(简
- e! A7 g& c) g/ Z% j; W9 A4 ^1 h0 e7 Y
写为uid);则uid的范围是从1到1000万的正整数。
6 e! ~, G7 j9 A" t2、好友:用户之间可以形成好友关系,好友是双向的;比如说uid为3和uid为4的
# {. r0 J' r0 f5 O. {
7 m7 L7 p9 H) [+ E+ G! j- s  s+ r两个用户可以互为好友。每个用户好友的上限是500个;用户之间的好友关系可以
# H+ ?* U  g/ b. u$ U6 n  O, P# R! ^8 d7 F
被解除
: Y: h' E9 [- l( {3、活动:每个用户只能发文章;文章可以被作者删除,其他人不能删除非自己发; g5 X" z8 `& W2 w
% o4 `1 C+ I+ F% J
表的文章;每篇文章通过一个blogid表示。
) n7 s  l3 x/ j' R7 x4、feed:我们希望,每个用户可以看到他所有好友的活动列表,在这个简化的系1 Y5 ], W; h' |9 D1 F: c( c- D. p
. R0 M& h' _% ^* Y, ]( @' r
统中就是所有好友的文章更新列表。/ _) t' h/ V% U. g! ~& S
5、访问量要求:所有feed访问量每天在1亿量级;所有的blogid增加量每天在百
4 ^) w7 ]& B& c/ R6 Z
$ W# M7 O9 e) m3 C; T$ M! T万量级。4 a; A7 a9 X6 a, C9 n, P" s
# }8 G9 \& ^0 t6 Y$ C
题目:请在以上限制条件下,设计一个高效的feed访问系统。  t9 D& Z9 j" b1 Z! ?( T

, i% p+ v+ y4 u& R要求:" J& q% C. \$ M1 T6 t, s
1、能够尽快的返回每个用户的好友feed列表,每个用户可以最多保留1000条feed6 Q% b+ v" {. X& U/ E# s+ C/ J2 ]

9 k( }! C' h" Z;feed的展现按照时间倒排序,最新的在最前面4 ]" C1 W; C& ?5 |1 C# m7 z
2、用户删除某篇文章后,被推出去的feed需要及时消失。即每个用户看到的好友
) v6 E7 ]4 U0 w% R9 w' H8 E0 E& o8 R5 t# w4 [
feed都是未被删除的
! l- ?# U; ~# i' g; c3、尽可能高效。
. o% m; d) `7 z$ S& Z- t# N
) r  J5 s8 M$ c百度历年校园招聘笔试题:http://bbs.aftjob.com/thread-417000-1-1.html
  K' Q  P4 B( N/ T1 x9 j+ I% t百度历年实习生招聘真题:http://bbs.aftjob.com/thread-606504-1-1.html
4 o3 f9 d9 w& j0 F/ G: Y百度2010实习生笔试2套:http://bbs.aftjob.com/thread-610484-1-1.html
. C* E/ s/ ~* q' n% P: I  w百度求职俱乐部:http://bbs.aftjob.com/group-4-1.html
您需要登录后才可以回帖 登录 | 加入后院

本版积分规则

Archiver|手机版|小黑屋|广告业务Q|工大后院 ( 粤ICP备10013660号 )

GMT+8, 2026-6-9 08:59

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表