C++技术岗位-笔试面试题总结【持续更新…】

作者: veaxen 分类: 笔试面试 发布时间: 2017-07-19 18:43

C/C++语法

1、C++中malloc/free与new/delete有什么异同?传送门

2、C++空类默认生成哪些函数?传送门

3、C++函数中哪些不可以被声明为虚函数?传送门

4、iostream和iostream.h的区别?传送门

5、static_cast, dynamic_cast, reinterpret_cast, const_cast区别比较?传送门

6、什么是模板特化(template specifications)和模板偏特化(template partial specifications)?传送门

7、const和static的应用和作用总结?传送门

8、struct和class的区别?传送门

9、如何判断浮点数是否为0,或判读两个浮点数是否相等?传送门

10、重载(overload)和重写(overried,有的书也叫做“覆盖”)的区别?传送门

11、结构与联合有和区别?传送门

12、extern“C”的作用?传送门

13、new 和 delete 的实现原理?传送门

14、不能做switch()的参数类型是?传送门

15、当一个类A中没有声明任何成员变量与成员函数,这时sizeof(A)的值是多少,请解释一下编译器为什么没有让它为零。[传送门]

16、指针和数组的常见笔试面试知识复习?[传送门]

17、volatile是干啥用的,(必须将cpu的寄存器缓存机制回答的很透彻),使用实例有哪些?(重点)[传送门]

18、什么叫静态关联,什么叫动态关联?传送门

19、什么是多态?多态的实现机制是什么?[传送门]

20、内存溢出有那些因素?[传送门]

21、必须使用初始化列表初始化数据成员的情况?[传送门]

22、面向对象的三个特征,分别有什么作用?[传送门]

23、虚基类的作用是什么,虚基类的实现机制就是什么呢?[传送门]

24、手写一个C++的单例模式?[传送门]

持续更新中...

数据结构

1、什么是哈希表?解决哈希冲突解决办法是什么?传送门

2、二叉树相关的一些概念和性质(考前重要复习资料)?传送门

3、判断一个链表是否存在环?[传送门]

4、给出完全二叉树的前序和中序遍历结果,如何重构完全二叉树?[传送门]

5、map和set的原理?[传送门]

6、STL各容器的实现原理?STL有7种主要容器:vector,list,deque,map,multimap,set,multiset?[传送门]

7、使用迭代器删除元素会导致什么问题?[传送门]

8、如何判断一棵树是平衡二叉树?[传送门]

9、常见二叉树的增加和删除节点的复杂度总结?[传送门]

10、求哈曼夫树的带权路径长度?传送门

11、哈希表查找成功、查找不成功的平均长度计算?传送门

持续更新中...

编程与思考题

1、判断一个数是不是3的幂【(扩展)一个数是不是2、4的幂】传送门

2、编写一个简易的String类?传送门

3、笔试面试常见排序算法?[传送门]

4、写一个函数,将字符串翻转,翻转方式如下:“I am a student”反转成“student a am I”,不借助任何库函数?传送门

5、100亿个数,求最大的1万个数,并说出算法的时间复杂度?传送门

6、手写二分查找算法的递归和非递归实现?传送门

7、反转链表算法?[传送门]

8、手写查找第k大的数?[传送门]

9、两个栈如何模拟出队列?延伸一下,类似问题,如何使用两个队列模拟出栈?[传送门]

10、手写一个小程序,打印杨辉三角?[传送门]

11、求子数组最大和,题目:

输入一个整形数组,数组里有正数也有负数。
数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。
求所有子数组的和的最大值。
例如输入的数组为1, -2, 3, 10, -4, 7, 2, -5,和最大的子数组为3, 10, -4, 7, 2,
因此输出为该子数组的和18。

传送门

12、判断一个数质数?要求要效率高!传送门

13、判断单链表中是否有环、环的长度、环的入口节点,单链表的倒数第K个节点等。传送门

14、快速排序的递归和非递归实现?传送门

15、判读两个字符串的结构是否相同【CVTE笔试】?传送门

16、输出数组中第n个未出现的正偶数【CVTE笔试】?传送门

17、0-1000有多少个7?不编程,直接给出思路和答案。传送门

持续更新中...

Linux系统

1、进程和线程的区别和联系?什么时候应该用进程?什么时候用线程?传送门

2、死锁是什么?有什么办法避免死锁?[传送门]

3、异步通信和同步通信的区别?[传送门]

4、操作系统执行可执行程序时,内存分配是怎样的?[传送门]

5、进程之间通信的方式有哪些?[传送门]

6、说出linux系统的各类同步机制?[传送门]

7、如何实现守护进程?[传送门]

8、linux的内存管理机制是什么?[传送门]

9、五种I/O模式是什么?[传送门]

10、标准库函数和系统调用的区别?[传送门]

11、exit() _exit()的区别?[传送门]

12、僵尸进程是如何产生的?如何避免?[传送门]

13、fork()和vfork()的区别?[传送门]

持续更新中...

网络基础

1、TCP协议概识?传送门

2、TCP协议为什么要有三次握手?四次挥手?[传送门]

3、IP地址的编码分为哪俩部分?[传送门]

4、select,poll,epoll的区别?[传送门]

5、tcp与udp的区别?[传送门]

6、udp调用connect有什么作用?[传送门]

7、什么是滑动窗口?[传送门]

8、UDP和TCP可以绑定同一个端口?[传送门]

持续更新中...

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!

发表评论

电子邮件地址不会被公开。 必填项已用*标注