吸收《剑指 offer》的“营养液 ”

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/ANNILingMo/article/details/81175627

1、写代码之前想好测试用例。

边界条件、特殊输入(空字符串、空指针等)及其错误处理。

2、遇到难题怎么分析?

画图能使抽象问题形象化,举例是抽象问题具体化,分析使复杂问题简单化。

3、查找和排序是最常用的算法,优化算法应该从时间和空间效率两个方面进行处理。

比如利用查找数组下标就可以把时间复杂度降到O(1),利用二分查找可以把时间复杂度降到O(logn);归并排序能够实现O(logn)时间统计n个逆序对数目。

4、面试应该具备的能力

扎实的基础知识、高质量的代码、清晰的思路、优化效率的能力;总得的来说应该具备两方面的能力:一方面具备够硬的编程能力和技术功底;另一方面具备沟通能力和学习能力,很多人都会忽视沟通能力。

5、一般都用c++来进行面试考核,一定程度上掌握c++对于我们来说是有必要的。基本语法,现在可以回顾一下;

构造函数:构造函数是一类特殊的成员函数,它的目的是完成对象的初始化。构造函数的名字和类名相同,可以有参数,但不能有返回类型。

析构函数:析构函数也是一种特殊的成员函数,在对象销毁时自动调用,以完成一些善后工作,例如释放分配的内存,释放申请的资源等。析构函数的名字是在类的名字前加上符号,没有参数和返回值。

析构函数只能有一个,如果没有定义析构函数,编译器会自动为该类生成一个默认析构函数。当具有自由存储期限的对象离开作用域或被清除时,析构函数都将隐式调用。对于使用new创建的对象,必须使用delete显式调用析构函数。

猜你喜欢

转载自blog.csdn.net/ANNILingMo/article/details/81175627