讯飞来华师校招。然后做了一套笔试题,晚上通知第二天去面试。
笔试题的难度偏简单,20个单选,10个多选,5个填空,2个编程。考的都是比较基础的东西。程序题,第一个20个考斐波那契,顺手就写了2种一个递归,一个递推的。第二个,字符数中删除重复出现的字符,要求字符顺序不变,我觉得第二个题有个坑要注意点,他是让你实现一个函数void类型的,2个形参char*指针,一个指向input一个指向output,我们在处理字符串的函数中,需要传出返回字符串的首地址到output指针中,因为是void类型的函数没有返回值,所以传址需要放在函数体内部实现。
一面:
2个面试官,0.0不知道我为什么是2个,而且问了我好多,一起去的同学是一个面试官,然后问的少,
上来让我简单介绍下做过的东西,最近做的项目,我bbb说了下简历上的2个项目。
1.让我讲常见排序时间复杂度,我把8大排序说完了,顺便补充了下,哪些稳定,那些不稳定,分析了下优劣。。。
2.让我讲个折半查找思路,还不是写,是讲,我说了下简单的思路,还有边界值的问题。
3.让我给他们讲个dp的例子,我比较菜,然后想给他们画,他们都不要,说你直接讲,我就讲的dp斐波那契的例子。
4.数据结构,bfs,dfs,只讲思路,不用实现,我就简单的说了下,然后补充了下图中的dfs,bfs的运用场景。
5.计算机网络 http协议是什么(超文本传输协议,应用层,web服务器与web浏览器间就行通信的语言)。
6.ARP,rarp(这个前一天的笔试卷子上写到过,DNS域名服务中的东西,ARP物理地址映射IP地址的解析协议,RARP是逆向的)
7.再就是操作系统,页面存储(分页(大小相等的区域若干的物理块),分段(每一段定义一组逻辑信息,如主程序段子程序段),区别:分页大小固定,对用户不透明,(页号|页内地址)由硬件决定,一维的;分块:大小任意,编程时决定,二维)
8.虚拟系统淘汰算法(FIFO先来先服务,LUR最近最久未使用,还有一个我不记得了)。
9.进程通信哪几种(共享存储区,管道通信,消息传递通信)。
10.数据库常见的sql语句。
11.index索引是个什么养的概念(相当于数组下标,直接访问地址,快速存取)。
12.关系代数运算符(我只说了简单的并差交,笛卡儿积,选择投影,连接我不记得了)
基本上一路谈笑风生,然后让出去等二面。
二面:
二面就比较炸了,也是2个人,一个年轻点的面试官,一个稍微大点的,看了下我的项目用的主要是C#,年轻点的上来让我先说个.net框架,,,一脸懵逼0.0真是尴尬,我说我不太清楚。
然后年长的出了个大数据排序的问题,10亿个10位数的大数,然后不考虑空间,快速排序。问第一个的时候已经把我问的有点懵了,然后我就说桶排,然后说了下怎么做,建桶,然后填桶,再桶里用根据实际情况,在选中nlogn的排序方法,感觉说的条理也不够清楚,毕竟心已经有点乱了,然后问我有没有别的更好的方法了,我说没有。
后来一想,是不是还可以用字典树+hash,10位数树也就11层,然后建字典树,hash放到叶子节点的数值,然后value记录出现的次数,好像会比单纯的桶排效果更好点。
然后问了下C#中 struct和class的区别,我知道又好多,可是一说了3,4条,简直爆炸,我说的又class是类,struct是结构体,类可以完成继承,用的时候需要实例化,struct直接定义就可以用了,类中有构造函数,构造函数还可以重构。然后问我还有没有了,我说struct一般小一点的数据结构,复杂的设计面向对象的用class。(http://www.cnblogs.com/gsk99/archive/2011/05/20/1904552.html)
然后开始问项目,问设计模式,让我说手势识别的项目里面用的设计模式,0.0我还提前一天看了下之前画的类图,但是但是设计类的时候也不是我设计的,我只是实现了一部分,讲的乱七八糟的,和年轻的说了一大坨,他又问了一大坨,我又说了一坨,一直是一种爆炸的状态,自己熟悉的数据结构,算法上面的都没说。
对面试的把控也好渣,二面扑街0.0
一面面了差不多25分钟,二面20分钟就结束了。。。