
面试题
海空天空
这个作者很懒,什么都没留下…
展开
-
海量数据处理
第一部分、十道海量数据处理面试题 1、海量日志数据,提取出某日访问百度次数最多的那个IP。 首先是这一天,并且是访问百度的日志中的IP取出来,逐个写入到一个大文件中。注意到IP是32位的,最多有个2^32个IP。同样可以采用映射的方法,比如模1000,把整个大文件映射为1000个小文件,再找出每个小文中出现频率最大的IP(可以采用hash_map进行频率统计,然后再找出频率转载 2015-03-25 19:07:31 · 336 阅读 · 0 评论 -
二叉树转化成双向链表
将排序二叉树转化成双向链表,应该是一道很常见的面试题目,网上的实现比较多,有用递归也有用中序遍历法的。看到一位外国友人的实现,还是比较清晰的,思路如下: 1,如果左子树不为null,处理左子树 1.a)递归转化左子树为双向链表; 1.b)找出根结点的前驱节点(是左子树的最右的节点) 1.c)将上一步找出的节点和根结点连接起来 2,如果右子树不为nul转载 2015-03-17 20:20:44 · 1359 阅读 · 0 评论 -
字符串四则运算
最近做了一道华为的机试题。感觉自己的方法比网上的简洁。 3. 简单四则运算 问题描述: 输入一个只包含个位数字的简单四则运算表达式字符串,计算该表达式的值 注 1、表达式只含 +, -, *, / 四则运算符,不含括号 2、表达式数值只包含个位整数(0-9),且不会出现0作为除数的情况 3、要考虑加减乘除按通常四则运算规定的计算优先级 4、除法用整数除法,即仅保留除法运算结果的转载 2015-01-09 15:22:59 · 717 阅读 · 0 评论 -
int 占用多少字节
本文转自http://charlesxie.blog.51cto.com/2236179/939680 最近在看深入理解计算机系统这本书,上面提到了在32位机器和64机器中int类型都占用4个字节。后来,查了The C Programming language这本书,里面有一句话是这样的:Each compiler is free to choose appropriate sizes fo转载 2015-01-08 19:00:44 · 2669 阅读 · 0 评论 -
字符串与整型的相互转换
void itoa (int n,char s[]) { int i,j,sign; if((sign=n) n=-n;//使n成为正数 i=0; do{ s[i++]=n%10+'0';//取下一个数字 } while ((n/=10)>0);//删除该数字 if(sign s[i++]='-'; s[i]='\0'; for(j=i;j>=0;j--)//原创 2015-01-08 18:41:35 · 330 阅读 · 0 评论 -
25匹马赛跑
25匹马通过赛跑来决出前三名,每轮最多5匹马参赛,求最少需要几轮? 条件: 1、最多5匹马一组,可以决出本组比赛的次序。 2、没有计时工具,假设马每轮的速度相同。 ===================================================================== 每次都排除不能争夺前三名的马是关键 7轮就可以了 1。转载 2015-01-06 10:23:39 · 772 阅读 · 0 评论