百度测试 面试经历(2014年3月)

匿名网友 匿名网友 发布于: 2016-02-25 00:00:00
阅读 144 收藏 0 点赞 0 评论 0

从大一开始学C,碰到过用value传参、引用传参、指针传参、宏定义交换x和y,但都要用到辅助变量,这次遇到JJ给的不借助第三变量交换x 和y,还真是第一次,My god。。。 第一反应,卡壳了,不过也到觉得很新鲜,特别好奇JJ似乎也看出了我不会,于是说:先想一会吧,在纸上写写,尽量写出算法代码。 哎我没遇到过,不过第七感马上告诉我: 这算法肯定不难,但很有技巧,可能是脑筋急转弯,想出来了就会豁然开朗,可惜此刻只缘我身在庐山中,不会呀于是乎,我就抛开了指针、引用之类的,想用异或、求反、求交等逻辑运算,还画出了00001,000010之类的来比较,可怜一时半会也倒弄不出来,JJ提示我想想有数学运算试试,于是我把考研那会的三角运算的加减乘除都想了个遍,也凑合了一个(x+y)和(x-y)的四则运算,可怜想不出下一步该如何做,哎,再加上突然遇到这个简单的不能再简单的问题却搞不定,再百度处女面心脏也跳得厉害,急得我坐在中央空调的大厦里,就像掉进了热锅里的蚂蚁急得流汗了,这天好热啊,哈哈,JJ看出来了,于是就跳过了。

面试官提的问题:

第一道很简单,问程序在内存有几个数据区,堆和栈区有啥区别 第二道是两个有序数组(可能升序或降序),要求合并到一个大数组中,使其仍 然有序,讲了大体思路,并用C简单写了实现代码 第三道是给出int型的x、y两个数,要求不借助第三个变量交换x和y的值

满意的地方:

挺好的

不满意的地方:

评论列表
文章目录