baidu笔试

第一题:
1、赋值;
2、+1操作;
3、循环,但只支持固定次数的循环;
4、只能处理0和正整数;
5、结果不会溢出。
要求用伪代码实现加、减、乘、除。

第二题:
C++ STL 中的string的内存管理

第三题:
有一个网站,接受外部访问对本机的数据库查询,比如SQL的 select 查询,大概是这样的 select field1 field2 content1 from tbl where fld= FLD and power =POWER, 因为访问量巨大还有数据量巨大,为了加快反应速度和查询速度,让你设计一个cache和分布式策略。然后让你写出核心数据结构,数据库数据分布策略,还有 数据查询和更新流程。后面还有一问是考虑分布式节点机器的添加和删除,如何来实现系统的稳定。刚看时没思路,后面磨叽磨叽想到了些,就是不知道我的思路有 没有一点对头:对fld, power字段值来把数据平均分布在各台机器上,比如fld,power字段的范围为(a1,b1)到(a2,b2),统计分布这段值间的概率分布,然后 将数据平均分布在各台机器上。某台机器接受查询时,如果数据在本机器上就直接从本机查询,否则连接有该数据的机器,让那台机器查询,再返回结果。更新也是 如此。具体的查询更新过程,则使用cache, cache使用散列表实现,使用fld, power字段值来构造散列函数,先查看cache中是否有该数据。如果有则通过fld,power字段值算出在散列表中位置,当然这里还要处理冲突问 题,可以用拉链法解决冲突。如果没有,则直接从数据库中查询,然后再将查询到的数据保存到cache中。更新时:如果cache中有,则先更新cache 中的,然后再更新数据库中的。后面那问我就没再扯了,添加和删除某个节点,那数据分布就得变化了,不知道用什么分布式策略可以解决稳定性问题。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值