百度一面面试过后亨氏多久出面试结果结果呢+一面分享

今天去面试百度了,一面感觉比较简单,百分之九十多都答上来了。坐下来面试的时候我看到了桌上我的笔试试卷,瞄到了分数,我擦,44分,这还能过笔试!然后等会有看到其他两张笔试卷,一张29分一张33分。。看来笔试给分是严格来给的。
& && &面试官先让我做自我介绍。然后马上就谈项目了,叫我挑一个项目讲讲怎么做的,解决了什么问题。问项目我最不怕了,毕竟项目都是自己认真地完成的,也确实在做项目过程中学到了很多东西,解决了一些问题。
然后就问问我在华为实习的情况。
说完他让我写写程序,问我知道哪些排序算法,叫我写一个熟悉的排序算法。居然让我自己选择,那果断快速排序啊。如下:
void quick_sort(int array[], int begin, int end)
& & & & if(end & begin)
& & & & & & & & int pivot =
& & & & & & & & int last_small =
& & & & & & & & int i =
& & & & & & & & while(last_small != i)
& & & & & & & & {
& & & & & & & & & & & & if(array[i] &= array[pivot])
& & & & & & & & & & & & {
& & & & & & & & & & & & & & & & int temp = array[i];
& & & & & & & & & & & & & & & & array[i] = array[++last_small];
& & & & & & & & & & & & & & & & array[last_small] =
& & & & & & & & & & & & }
& & & & & & & & & & & & else
& & & & & & & & & & & & & & & & i--;
& & & & & & & & }
& & & & & & & & int tmp = array[pivot];
& & & & & & & & array[pivot] = array[last_small];
& & & & & & & & array[last_small] =
& & & & & & & & quick_sort(array, begin, last_small - 1);
& & & & & & & & quick_sort(array, last_small + 1, end);
然后叫我写反转链表。。太经常问了这问题。但他一开始说不允许另外开辟地址,我还以为临时变量都不让声明,我就说这有点难。但是过一会他纠正了,临时变量是可以的。
void reversal(listNode* head)//reverse the list
& & & & & & & & listNode* before = NULL;
& & & & & & & & listNode *current =
& & & & & & & & listNode *temp =
& & & & & & & & while(current != NULL)
& & & & & & & & {
& & & & & & & & & & & & listNode* next = current-&
& & & & & & & & & & & & current-&next =
& & & & & & & & & & & & before =
& & & & & & & & & & & & current =
& & & & & & & & }
& & & & & & & & head =
问:在已排序好的数组找两个数a+b等于给定的N。
对于一个数组array,长度为size,令begin = 0,end = size - 1,判断array[begin] + array[end] 与n的大小关系,如果相等,则找到;如果小于,则begin++,如果大于,则end--,然后继续做前面判断。这样基本上效率能最快了,因为是O(n)。
问:不用第三个参数调换整数a和b
他问了之后我就说这题我会,说真的,这题要是之前不知道,要在面试的时候想出来基本不可能。要用异或操作符来做:
然后用a= 101,b = 111测试了一下,根据上面操作a = 010;b = 101; a = 111正确。
问:堆栈区别
说了一下四点:
1)栈是连续的,堆是不连续的;2)栈元素自动释放,堆元素要手动释放;3)栈从高地址开始存储向下增长,堆相反;4)存储读取效率上栈比堆快。
还问通常什么存储在栈中,答函数参数、局部变量等。
接下来他看了我的笔试题试卷,主要是讨论最后一道题:如下
情景:新浪微博发布内容要求字符不超过140,但是用户如果在发布内容中有很长的url时,会认为是很多字符。所以新浪上发布内容包含一个URL时,时把他压缩成一个TinyURL(缩小)。比如:
实际显示:。(这里我只是随便举了个例子)
前面是对应域名 ,后面长长的字符串被压缩成ak78ss。
现在让你来设计TinyURL的实现,一下问题要怎么设计:
问题一:域名后面的编码如何实现?
问题二:对于已经映射过的一个URL,怎么查找已存在的TinyUrl?
问题三:有10亿个url,一个服务上存不下,需要多台服务器,怎么设计实现?
问了一个问题,说你觉得让你来设计这样一个服务,最大的问题是什么?我说是tinyurl的hash表存储,因为数据量真的非常大。他问那你要怎么存储,我说要用二次哈希吧,先根据hash值存储到对应的服务器上面,再进行hash存储。
接着他问我试卷上memcpy怎么没写?我说我当时对这个函数不了解。他叫我现在做一下这个题。我就不贴代码了,写得太烂,他说要在复制的时候考虑内存溢出问题。有兴趣的可以网上找实现代码。
后面是一道概率问题,一个山区的村子,生孩子直到生了一个男孩为止。题目就不多说了,网上不久有这道原题么?但我之前根本没看答案。所以我一开始在纸上一个劲地计算,最后发现计算不出来之后,我给了他这样的答案,说我觉得是1:1。为什么?因为生男生女概率本来就都是二分之一,无论定义怎么的规则生孩子,生男生女概率就是不会变,所以数量多了之后男女比例是1:1。我不知道他是否想要这样的答案,但我觉得我当时挺机智的。他说原理是什么呢?我说,当数量足够大的时候,概率比就是数量比。随后他爽快地说:去二面吧!
二面基本就是在考算法和数学了!总共四到题目:
一& &写程序实现十进制转n进制,返回值类型自己定义。我就实现 了一个 string result(int m, int n)//m表示十进制数,n表示进制数。现场写的代码不完整,回来再完善了下:
#include&iostream&
#include&string&
#include&stack&
string transform(int n, int m)
& & & & stack&char&
& & & & if(n & 0)
& & & & & & & & negative =
& & & & & & & & n = 0 -
& & & & else negative =
& & & & while(n != 0)
& & & & & & & &
& & & & & & & & int mod = n %
& & & & & & & & if(mod & 9)
& & & & & & & & & & & & tmp = 'A' + mod - 10;
& & & & & & & & else tmp = '0' +
& & & & & & & & s.push(tmp);
& & & & & & & & n /=
& & & & int index = 0;
& & & & int len = s.size();
& & & & if(negative)
& & & & & & & & ++//为负数,加负号
& & & & string result('1', len);
& & & & if(negative)
& & & & & & & & result[index++] = '-';
& & & & while(!s.empty())
& & & & & & & & result[index++] = s.top();
& & & & & & & & s.pop();
& & & & return result.substr(0, len);
二&&一个数组由a,b,c,d,e五个字符组成,设计一种算法找出一个包含这五种字符的最小区间,数组是循环的,也就是可以有这样的区间(9,2)
& & 因为要包含五个字符,所以最小区间长度是5。所以我最开始想到的就是让区别数从5开始往上递增,对于每一个区间数比如5,遍历数组的所有区间,判断是否包含5个字符,是的话就刚好找到了最小区间。然后这复杂度算了一下是O(n^3)了,接着在面试官的指导下我优化到了O(n^2)。他说其实最优的可以O(n),不过能优化到O(n^2)已经不错了。
三&&概率题
有四种颜料,给下面8个方格填色,每相邻两个不能用同一种颜色,有多少种填色方法?
想了一下,挺简单的,就是4 * 3^7。然后他加了条件,首尾也不能用同种颜色。他这样加条件后我想了很久,中间也说了我的逻辑,我觉得没挺严谨的,但就是错误。最后没能想出正确答案。
四&&也是一道在网上看到过的题目,但就是之前没去看答案,也没思考过。
百度hi有个日志文件存了用户的上线时间和下线时间,格式为&&userid& && &hh:mm::ss(上线)& &hh:mm:ss(下线),一行一条数据。问,如何统计一天内每一秒在线的用户数量。数据量100w。
我最终是想出了复杂度 大概在100w*40左右的算法,他好像也比较满意,但说最优可以到100W加一个常数。
本文已收录于以下专栏:
相关文章推荐
百度面试经历
水过了一二面 shijianwent三面下周
9月参加的网上笔试,选择主要做了一些行测的题(头一次做行测题),后面有三道编程题,做出来一道,卡在第二道了50%,感觉自己水水的,百度也一直没通知面试,以为被刷了就没抱什么希望。后来13号竟然发来了面...
岗位:机器学习/数据挖掘
在线笔试时间:
面试通知时间:
面试时间:9.25 2:00 pm
一面&二面地点:海淀区上地十街百度大厦C座
三面时间:9.2...
一、简答题
1.请简述TCP-IP的3次握手以及4次挥手过程?并解释为何关闭连接需要4次挥手?
所谓三次握手(Three-way Handshake),是指建立一个TCP连接时...
百度面试题
一面(1 hour):
1.面试官从简历里抽了一个较感兴趣的项目,让把项目简单介绍了下,针对项目问了几个技术问题
2. 介绍Java中垃圾回收机制,程序员平时需要关注这个...
阿里巴巴2014秋季校园招聘-软件研发工程师笔试题 详解
职位:开发、后台、客户端、前端等
城市:上海、合肥、沈阳、长沙、深圳
(一)不定项选择题(25*4)
1.  使用深度优先算法遍历下图,遍历的顺序为()
把基本经典的书籍认真看看,那些笔试面试的都不是什么问题。但是,专门的突击和训练还是很有必要的。
好的offer是可以通过充分的准备刷到的。
我们就从各大公司的套题开始刷起吧,中间再穿插一些专题。
...
他的最新文章
讲师:汪剑
讲师:刘道宽
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)& & & & 期中考试最后一科前收到一个电话说明天百度电话面试,当时有点激动,马上准备准备,多好的机会当然要好好把握。。之后上了百度实习生招聘官网,发现自己投的简历‘运维部_实习平台研发Java工程师’被挤到下面去了,结果没有投的‘运维部_实习平台研发PHP工程师’方向通过了,居然显示简历筛选已通过,之后问了一下,面试官说php需求较大,java没什么需求,所以被调整了,虽然自己主要的方向是java,而php学的也还行,但毕竟不是主要的方向,然后在想明天的面试可能有点不妙,不过有面试机会真的挺好的。。
  最后百度一面居然没过,太伤心了。。虽然觉得自己面的还不错,可是居然没过,纪念下面试过程,算是一个教训吧。。
  面试官让我先自我介绍下,然后就开始了,第一个问题,栈和队列有什么区别,这个这么基础的问题,比较简单。然后就是快速排序的时间复杂度和基本思想,这个也还行,上次清明回家的火车上无聊正好看了一下,然后就是堆排序的时间复杂度和基本思想,和怎么建堆的,怎么由平衡二叉树建堆的。。怎么建堆的思想大概知道,在火车上也看过,感觉还行,具体可参照blog(http://blog.csdn.net/lufeng20/article/details/7481427),然后是多态,问什么叫多态,有没有什么实际应用,这个也还好,然后面试官看了我的blog,问了一下设计模式,观察者模式和常见的一些模式,这些也都还行,然后问了linux下编程,vi的使用,然后就问到项目的问题,问之前做的项目用的web
server都哪些,说了apache,tomcat,然后说说这两个web server的区别,这个估计答得不太好,当时对web server没有太多深入的了解,然后因为项目中写了php和jsp/servlet,他问了php,jsp的框架有什么区别,然后问了数据库的索引,问了索引是干嘛的,索引用什么实现,b树索引的思想是怎么样的,这个b树索引真心不太会,这个也回答的不好。。最后问了两个问题,第一个问题长为m,宽为n的长方形,m&n,都是整数,将这个长方形划分为单位1的正方形,问长方形里面一共有多少个正方形。。这个想了一下之给出边长为n的正方形的个数有m-n+1个。。有点囧。。第二个问题,他先说这提做过了可以说,他就换一题,可惜没做过,题目是在一个序列(相当于数组)里用高效的算法找出最大值和最小值,正常的答案都是经过两次循环直接找出,然后当时有点紧张,没想到更高效的算法。。上网查了资料,具体可参照blog(http://blog.csdn.net/lufeng20/article/details/7454703),然后就面试结束了。。一共面了一个小时零几分钟。。还有一些问题吧,时间太久忘记了,当时面完等了很久才发现没想到一面被刷了。。然后才想起写日志记下来。。
  虽然这是第一次面试,还是电话面试,但是被刷了,感觉有点失望。。想起陈安之的一句话,“得不到你想要的,你即将得到更好的”,不论如何这次面试说明自己还有一堆的东西不会,要学的还有一堆的东西要学,向面霸迈进的路还挺长的。。。
本文已收录于以下专栏:
相关文章推荐
本人大三学生一枚,能有这次百度实习面试的机会也是多亏了大神学长,他把我的简历内推进百度的,我属于直接电话面试的;
  一面:
   3月11日下午,一点半午睡起来看到了一个北京的陌生电话,开始以为...
今天下午两点到三点,进行了生平第一次电话面试。为时59分钟,纯技术面。
直入正题,就开始了算法的考察。总共问了两个,大约40分钟,第一个在提示下勉强答上了,第二个是真没答出来。
然后是跟项目相关的...
堆是一种特殊的数据结构,是一种完全二叉树,分为大根堆(根节点的值大于孩子节点)和小根堆(根节点小于孩子节点),好了,不废话了,怎么建堆和堆排序直接贴代码如下(其中调整堆,建堆,堆排序的具体步骤均有注释...
一个在Linux下可以使用的聊天软件,要求至少实现如下功能:
1. 采用Client/Server架构
2. Client A 登陆聊天服务器前,需要注册自己的ID和密码
3. 注册...
文章转载://sort-algorithm/quick-sort/#javascript-语言实现
快速排序是图灵奖得主 C. ...
反转字符串://三种实现方式
public String reverse1(String str){
return new StringBuilder(str).reverse().t...
百度面试时间为去年5月即2016年5月,在腾讯面试之后。申请岗位为java开发工程师,笔试内容包括但不限于:简单数据结构、java相关知识(内存、GC、虚拟机)、操作系统、计算机网络等。大题为3道算法...
void Embed(int a[],int n)
for(i=1;i&n;i++)
if(a[i]tem...
一年有余没有写博客了,这一年经历了很多事。找实习、夏令营、考研、脚骨折受伤、复试、来到中科院工作。直到最近,才有时间一一记录这一年以来的发生的种种事情。先从去年腾讯面试说起吧,时间久远,可能记忆得不是...
他的最新文章
讲师:汪剑
讲师:刘道宽
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)昨天去面试了,今天还在等结果,请问,一面一般多久通知结果呀【文思海辉吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:2,500贴子:
昨天去面试了,今天还在等结果,请问,一面一般多久通知结果呀收藏
基于ISO及GBT质量标准构建完善测试体系,通过标准规范的测试服务,实现App顺利发布上线.App云测试的全球领导者Testin云测,为超过230万个APP测试超过1.8亿次.点此申请!
一般来讲2--3天差不多吧,不过现在刚过完节,应该比较忙,你再等等看
试用期有多久
急用人的话当天就有结果,3天没结果果断找下家吧
我觉得只要看中,当天就有消息了吧
为什么非让我培训,培训还有费用,在苏州银行那边
一般3天左右就通知了
登录百度帐号推荐应用

我要回帖

更多关于 星期五面试周几出结果 的文章

 

随机推荐