欢迎参加迅雷网络2008年实习生招聘

  • 下面是3道应用题,请编程实现:
    (注意时间、空间的优化,先写详细实现思路,再写代码,并且有详细清晰的注释)
  • 一、实现一个高性能的文件缓存系统,先写好思路,再编码实现。
  • 二、实现一个高效率的程序(包括所需程序代码),以尽量短的时间,将用户信息表中150张按照时间hash的表(每张表的数据量为100万,数据字段包含《最近修改时间戳/username/nickname/出生地/所在地/年龄/性别/自我介绍》),转换成按照username hash的100张表。转换过程方法和过程需要考虑:
    a)尽可能短的时间中断用户服务;
    b)尽可能少的使用机器内存。
  • 三、迅雷进行一个活动,这个活动需要客户端访问我们服务器。但活动为了限制访问量,做了如下规定,那就是每一个帐户在3600秒内只能参加不多于5次。请实现类c_user_enabled,完成此限制功能。
    类接口定义:
    Class c_user_enabled
    {
    Public:
    Bool init();
    Bool is_user_enabled(string user_name);// user_name表示用户帐户标识
    Bool destroy();
    };

    附:
    需要考虑线程安全
    可以使用stl.
    可以使用如下的一个hash函数:
    Unsigned str_hash(string str);
    可以使用如下锁:
    Class c_lock
    {
    Public:
    Void lock();
    Void unlock();
    Private:
    …;
    };