腾讯2012面试
来源:互联网 发布:mysql和oracle的比较 编辑:程序博客网 时间:2024/06/08 13:30
求一个论坛的在线人数,假设有一个论坛,其注册ID有两亿个,每个ID从登录到退出会向一个日志文件中记下登录时间和退出时间,要求写一个算法统计一天中论坛的用户在线分布,取样粒度为秒。
思路:一天有 3600 * 24 = 86400秒
定义一个长度为86400的整形数组,int data[86400],每个整数对应这一秒的人数变化值,可能为正也可能为负,初始化数组为0
然后依次读入每个用户的登录时间个退出时间,对应登录时间的data[log in]++,对应退出时间的data[log out]--,如此一来,得到了每秒的人数变化
假设一天开始时论坛在线人数为0,则第1秒的在线人数online_num[1] = data[1],则第n秒的在线人数online_num[n] = online_num[n-1] + data[n]
这样就得到了一天中任意时刻的在线人数
阅读全文
0 0
- 腾讯2012面试
- 腾讯面试
- 腾讯面试
- 腾讯面试
- 腾讯面试
- 腾讯面试
- 腾讯面试
- 腾讯面试
- 腾讯面试
- 2012腾讯校园招聘面试经历
- 2012腾讯校园招聘面试经历
- 2012武汉腾讯实习面试总结
- 【面试】转载--腾讯面试经历
- 郁闷的腾讯面试
- 腾讯笔试和面试
- 腾讯笔试和面试
- 腾讯面试--指针
- 腾讯的电话面试
- Unique Binary Search Trees
- Java笔记
- 【HDU5628】Clarke and math-狄利克雷卷积+快速幂
- PLSQL数据导入导出问题解决(空表、大字段表、表空间错误等)
- Hibernate crud操作
- 腾讯2012面试
- 13.退出应用程序(递归和栈退出)
- tensorflow中tf.nn.conv2d_transpose的应用
- Counting Bits
- Incorrect response id (request id: 1, response id: )
- nginx使用非80端口时url带端口号的解决办法
- mysql学习-基本语句
- Centos安装redis时遇到You need tcl 8.5 or newer in order to run the Redis test
- MacBook运行C++操作方法(不用安装任何插件)