面试
文章平均质量分 58
六灬道
这个作者很懒,什么都没留下…
展开
-
在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
class Solution {public: bool Find(int target, vector<vector<int> > array) { int rowCount = array.size(); int colCount = array[0原创 2018-08-23 11:02:20 · 104 阅读 · 0 评论 -
C++常见问题(一)
1、字符数组初始化有两种方法: 1.用字符为数组赋初值 2.用字符串常量赋初值,注意字符串用双引号 2、原创 2018-09-02 12:51:45 · 208 阅读 · 0 评论 -
strcpy和memcpy的区别?
1)复制的内容不同。strcpy只能复制字符串,而memcpy可以复制任意类型的内容。strcpy只用于字符串复制,并且还会复制字符串的结束符。memcpy对于复制的内容没有限制,用途更广。 2)复制的方法不同。strcpy不需要指定长度,遇到结束符’\0’才会结束,所以容易溢出。memcpy则是根据第三个参数决定复制的长度 3)用途不同。通常在复制字符串时用strcpy,在复制其他类型数据时...原创 2018-09-03 21:40:19 · 9986 阅读 · 0 评论 -
C++面试常见问题总结
1、new和malloc的区别 1)分配方式:new根据数据类型分配内存,会调用构造函数,malloc根据数据大小分配内存; 2)类型:new是操作符,可重载,而malloc是库函数; 3)返回类型:new返回指定对象的指针,malloc返回的是void*,所以一般需要进行内存转换; 4)销毁方式:new分配的内存用delete销毁,delee会调用析构函数;malloc要用free销毁;...原创 2018-09-06 13:02:15 · 1927 阅读 · 0 评论 -
面试总结(一)
深信服一面(已挂) 1、在一个字符串中查找指定字符的方法有哪些? 答:遍历字符串,逐个判断;用strchr()函数查找,返回第一次出现的字符的地址;用一个辅助数组来做hash映射,第一次扫描时,更新在辅助数组中当前字符出现的次数,hash查找的时间复杂度为O(1),第二次扫描时,在辅助数组中找出当前字符出现一次的位置。2、如果要在字符串中查找{a,b,c}中的任意一个字符并返回第一次出现的...原创 2018-09-06 21:05:30 · 179 阅读 · 0 评论 -
C++--内存管理与释放
1、为一个数据对象(可以是结构,也可以是基本类型)获得并指定分配内存的通用格式如下: typename * pointer_name = new typename;2、堆和栈的区别: 栈区(stack),由编译器自动分配释放,存放函数的参数值,局部变量的值等。操作方式类似于数据结构中的栈,速度较快。 堆区(heap),一般由程序员分配释放,若程序员不释放,程序结束时由操作系统回收。它不是...原创 2018-08-11 16:08:01 · 1038 阅读 · 0 评论 -
面试总结(二)
百度一面:1、多态、如何实现、虚函数的实现及其作用?哪些可以为虚函数,哪些必须,哪些不可以?虚函数内部是怎么实现的?多态:允许将父对象设置成和一个或多个子对象相等;也就是允许将子类类型的指针赋值给父类类型的指针(一个接口,多种方法,即接口重用);不论传递过来的究竟是哪个类的对象,函数都能够通过同一个借口调用到适应各自对象的实现方法;C++支持两种多态性:编译时多态性,运行时多态性a、编译时...原创 2018-09-19 21:48:42 · 165 阅读 · 0 评论 -
C++面试常见问题准备
1、strlen与sizeof的区别:(1) strlen()是函数,在运行时才能计算。参数必须是字符型指针(char*),且必须是以’\0’结尾的;当数组名作为参数传入时,实际上数组已经退化为指针了。它的功能是返回字符串的长度。(2) sizeof()是运算符,在编译时就计算好了,用于计算数据空间的字节数。因此,sizeof不能用来返回动态分配的内存空间的大小。sizeof常用于返回类型和静...原创 2018-09-28 09:37:22 · 203 阅读 · 0 评论