百度2012研发工程师笔试卷
时长:120分钟 总分:100分
202浏览 0人已完成答题
题型介绍
题型 | 简答题 |
---|---|
数量 | 8 |
搜索引擎的日志要记录所有查询串,有一千万条查询,不重复的不超过三百万,要统计最热门的10条查询串。
要统计最热门的10条查询串. 内存<1G. 字符串长 0-255
(1) 主要解决思路
(2) 算法及其复杂度分析
用 C 语言写一个函数来执行一串任务。任务是互相依赖的。比如 B 任务依赖 A 任务,则 A 完成 B 才能执行。不考虑并发限制,假设所有的任务都能一次执行成功,所有的任务执行时间都相等。任务数据结构原型为: typedefstruct { int id;//该任务的 ID int *child;//该任务依赖的任务的 ID intchild_num//该任务依赖的任务的个数 }task; 函数原型: booldoschedule(task*pask,inttask_num )
typedef struct { //该任务的 ID int id //该任务依赖的任务的 ID int *child //该任务依赖的任务个数 int child_num } task // 函数原型: bool doschedule(task*pask,inttask_num) //以下函数可以直接调用: void dotask(int id) //执行一个进程 //等待 timeout 时间,并返回一个执行成功的任务的 id,如果没有任务在时间片内完成,则返回-1 int waittask(int timeout) bool killtask(int id) //杀掉一个进程
阐述栈和堆在生命周期、速度、内存性能等方面的不同点。假如现在有一个缓冲 区域绝大多数只需要 1KB 空间,极少数极端情况下需要 100MB,怎么样合理分配内 存?
说明以下包含 const 修饰符的语句的意义 a). double * ptr=&value; b). const double * ptr=&value c). double *constptr =&value d).const double *const ptr=&value
说明以下包含 const 修饰符的语句的意义
a). double * ptr=&value;
b). const double * ptr=&value
c). double *constptr =&value
d).const double *const ptr=&value
请问 c 语言中怎么去除 const 修饰? 比如: const double value=0.2f; double *ptr; ptr 怎么样获取 value 的值?
const double value=0.2f; double *ptr;
ptr 怎么样获取 value 的值?