发布于 2014-12-28 07:53:24 | 267 次阅读 | 评论: 0 | 来源: 网友投递

这里有新鲜出炉的精品教程,程序狗速度看过来!

大众点评网

大众点评网于2003年4月成立于上海。大众点评是中国领先的本地生活信息及交易平台,也是全球最早建立的独立第三方消费点评网站。大众点评不仅为用户提 供商户信息、消费点评及消费优惠等信息服务,同时亦提供团购、餐厅预订、外卖及电子会员卡等O2O(Online To Offline)交易服务。大众点评是国内最早开发本地生活移动应用的企业,目前已成长为一家移动互联网公司,大众点评移动客户端已成为本地生活必备工具。


本文为大家整理分享的是一份2015大众点评网校园招聘笔试题-开发类,感兴趣的同学参考下。

以下为试题:

   1、有10个文件,每个文件1G,每个文件的每一行存放的都是用户的query,每个文件的query都可能重复。要求你按照query的频度排序。

   hash映射:

   1、顺序读取10个文件,按照hash(query)%10的结果将query写入到另外10个文件(记为a0,a1,..a9)中。这样新生成的文件每个的大小大约也1G(假设hash函数是随机的)。

   2、hash_map统计:找一台内存在2G左右的机器,依次对(a0,a1,..a9)用hash_map(query, query_count)来统计每个query出现的次数。每个query出现一次,则count+1。

   3、堆/快速/归并排序:利用快速/堆/归并排序按照出现次数进行排序,将排序好的query和对应的query_cout输出到文件中,这样得到了10个排好序的文件(记为b0,b1,..b9)。最后,对这10个文件进行归并排序(内排序与外排序相结合)。

   2、点评在和第三方网站合作的过程中,需要在由点评页面跳转到对方页面的链接中加入信息来记录点评自己的一些信息,例如用户信息(包括id和识别串)、平台(PC、WAP、APP等)、访问时间等,但是对方只能保留一个由大写字母和数字组成的字符串(长度小于等于128个字符,越短越好)来标识这样一次访问,之后会将该字符串回传给点评。请为这个需求设计一对加密解密函数,函数原型如下:

   struct DianPingInfo {

   uint_32 userId, string userString, //长度为32,由大小写字母和数字组成

   Date viewTime, //精确到秒

   uint_8 platform

   };

   string encode(uinit_32 userId, string userString, Date viewTime, short platform);

   DianPingInfo decode(string);

   可供编码的字符需要大写字母和数字总共有26+10=36个,那么只能编码5个bit,需要将编码前的5个字节编码为8个字节。其实考虑到算法的简单,可以只编码4个bit,那就是每个字节用两个字节编码,这样只需要使用大写字母而不用数字。比如 一个字节是'a' ASCII码为0x61,二进制为01100001,拆分为两个4bit为0110和0001,然后都加上'A',就编码成为了G和B。这一方式的缺点在于浪费一半空间

   3、场景:

   考察目的:linux文件系统

   管理员有一台普通的pc 机器,已安装linux操作系统(如:centos 6.5)。管理员告诉你,在 /data 目录下 只有1个100MB 大小的文件。他要求你找到这个文件并将它拷贝到 /home 目录下。

   问题:

   1,由于不知道文件名,只知道文件大小。你能通过使用哪些 linux工具去找到这个文件?

   2,找到该文件后,使用什么linux 命令去完成文件拷贝?

   3,进行拷贝操作时,系统提示:没有权限。你需要检查哪些地方?

   4,进行拷贝时,系统提示:磁盘满,无法写入。你需要使用什么linux命令,检查哪些地方?

   5,你估计完成这个文件拷贝需要多长时间?写出你认为对拷贝时间影响比较大的因素,越多越好。

   1、ls -lhs 会显示 文件大小、读写执行权限、用户组归属及文件名等信息

   或者直接使用find命令 find /data -size 100M

   2、cp /data/test /home

   3、需要查看该文件的用户组权限,使用 ll 命令查看该文件所有者信息,添加该用户为该文件的归属组

   使用chown和chgrp 可以修改文件用户组权限

   4、df -h /home

   查看目的地址可以空间情况,如果可用空间不足则需要将文件拷贝到其他地方,或者将其他可以空间新挂载/home下

   5、cp传输速度大约是8M/s,传输时间大约为10s +

   影响因素:

   1)缓存。测试以前要先把分区卸载掉,然后加载。这样才没有缓存了。包括目录。

   如果有缓存文件和目录,速度差别特别大。

   2)还要看文件在磁盘的位置。磁盘还有一个寻道时间平均9m/s.

   3)如果是网络传输,还需要考虑网络延时、网络带宽等问题。

   4)另外如果有加密的话,加密算法不同会明显影响传输时间,越弱的加密算法传输速度越快

   5)压缩问题,压缩会降低传输速度



最新网友评论  共有(0)条评论 发布评论 返回顶部

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务