宝宝找工作以来,大大小小的面试经历了不少,总结出一些software必定会被问到的问题,供大家参考(这些问题很多都非常基础,出现在华为、中兴、intel、上海群硕、深圳正阳、腾讯、惠普、微软等公司,如果栽在这上面谁都不会甘心):
C、C++部分:
1、排序。这种题目几乎是必问的,一般是问你排序有几种,各种排序的比较啊等等。还有哪些排序是稳定的等,这些还是要记住的。末了,必定会问你快排的算法~呵呵,狠一些的就让你写出来。(至于堆排序桶排序啊什么的,倒是从来没有听说有人被问过——我们觉得这么麻烦的算法面试官自己估计也不会记得……呵呵)
2、查找。哈希、二叉树、折半等对比。哈希映射和哈希表的区别。
3、链表和数组的区别。在什么情况下用链表什么情况下用数组。
4、栈和队列的区别。
5、多态。overload 和 override的区别。
6、字符串有关的函数。比如让你写一个拷贝字符串的函数啊,或者字符串反转啊什么的。strcpy和memcpy。
7、继承、多继承。
8、面向对象有什么好处
9、说说static的与众不同之处。如果一个变量被声明为static,它会被分配在哪里。在什么时候分配空间等。
10、软件开发的几个过程。如果说到测试,一定会问测试分哪几种,有什么区别等。
11、什么是虚函数、纯虚函数、虚的析构函数,用途。
12、还没想起来,欢迎大家补充CharlieBrown补充
1、Java的特性,垃圾回收,让你想一个大概的实现垃圾回收的架够。
2、Java和C/C++的区别
3、虚函数,纯虚函数、重栽函数,他们之间的区别,什么时候用,重载什么时候用虚函数。虚函数的实现机理。
4、现场编写程序的考点:指针越界、基本类型数据的字长、字符串、数组
面试常见问题解答1:CObject类中的析构函数为什么是虚函数ZZ
面试SE时,很多公司喜欢问到虚函数相关。宝宝有一次被问到,CObject类中的析构函数为什么是虚函数,不懂。后来上网查到了答案,特贴上来与大家分享面试常见问题解答2:几种查找方式的比较