面试
来源:互联网 发布:javascript 扩展库 编辑:程序博客网 时间:2024/05/16 06:25
2016.03.21阿里电话一面46min,答得不好,但是面试官人很nice的。
1、 上来就问MySQL数据引擎,我没答出来。
2、 MySQL和nosql等的区别。
3、 MySQL优化,我说了两个不能用select子查询和like查询。然后问我为啥不能用like查询。
4、 然后问索引,问MySQL索引原理,建立索引的时候都在干嘛,什么时候使用索引,我只知道是B+树。
5、 没有问SQL语句,看我数据库不太清楚,然后就问了SVN和Github的区别,主要是Github是分布式的。
6、 Ubuntu和Redhat的区别。竟然是软件安装的区别,没有问linux命令。
7、 最熟悉的一种排序,我回答快排,我还说了堆排序。然后问我哪种快,我说快排,掉进陷阱了,这里应该说根据数据量来定。还问了快排的改进算法,主要是基数的选择。我还介绍了STL里的sort排序原理。
8、 C++多态实现。
9、 C++中的内存段分类。
10、 堆和栈的区别。为什么栈的内存由操作系统回收。
11、 C++ static作用。静态存储区,内链接,类的静态变量和函数三个方面回答。
12、 静态链接库与动态链接库的区别。
13、 C++多线程。问了保证线程之间的同步性。我说的mutex,面试官说还有读写锁,这个没有接触过。然后探讨了下violate关键字。
这个问题应该从线程之间的同步和互斥两个方面来回答,线程同步互斥的方法有四种:(互斥锁、读写锁、条件变量等)
① 互斥量
② 临界区(不能用于进程间不同线程的同步)
③ 信号量(有名、无名)
④ 事件event,和进程间的“信号”通信类似
14、 问了进程与线程之间的区别;在linux下,进程fork()之后,父进程、子进程和fork进程之间的关系。
进程间的通信方式有:
① 管道(有名管道、父子进程无名管道)
② 信号
③ 信号量(有名、无名)
④ 消息队列
⑤ 共享内存
⑥ socket
2016.03.29 蘑菇街电话一面26min
1、 聊了下项目
2、 进程与线程的区别、进程间的通信
3、 问我对java熟不熟,问了JVM垃圾回收机制
- 面试!
- 面试
- 面试
- 面试
- 面试
- 面试
- 面试
- 面试
- 面试
- 面试
- 面试
- 面试...
- 面试
- 面试
- 面试
- 面试
- 面试
- 面试
- java语言程序设计第十版(Introduce to java) 课后习题 chapter6-14
- 安卓介绍
- oracle 分组函数
- Android新手入门2016(10)--GridView
- iOS 让只支持竖屏的App横屏播放网页视频
- 面试
- abort
- java语言程序设计第十版(Introduce to java) 课后习题 chapter6-17
- 硬编码序列号追踪-CrackMe系列1
- 几种即见即所得Web编辑器优缺点比较
- 问题 F: 删出多余的空格
- ios自定义View:init和initWithFrame方法
- ubuntu下c++ stlport安装
- spring中的依赖注入和控制反转(二)——Spring 设值注入和构造注入比较