
笔试强训
文章平均质量分 96
是奈思呀
这个作者很懒,什么都没留下…
展开
-
备战秋招 | 笔试强训24
A. 34B. 21C. 16D. 12。原创 2023-08-05 17:04:24 · 266 阅读 · 0 评论 -
备战秋招 | 笔试强训23
计算字符串的编辑距离原创 2023-08-05 16:16:50 · 426 阅读 · 0 评论 -
备战秋招 | 笔试强化22
思路:我们采用计数排序的思想,开一个256大小的整型数组,将字符串中的每一个字符都一 一映射到数组中每一个位置,每次遇到字符串的字符,相应位置++,最后遍历字符串,找出第一个只出现一次的字符;若想做到任意一个栈满都另一个栈都无法插入,必须使得他们的入栈增长方向不同,若一个向上增长,一个向下增加,此时他们任意一个满了,另一个都无法插入;时间复杂度为O(N);B. S1的栈底位置为0,S2的栈底位置为n/2。C. S1的栈底位置为1,S2的栈底位置为n/2。B. S1的栈底位置为0,S2的栈底位置为n/2。原创 2023-08-03 10:39:36 · 145 阅读 · 0 评论 -
备战秋招 | 笔试强训21
我们根据题目知top仅仅只是一个指针,不存数据,当我们实现链栈时,我们肯定选择头部作为栈顶,因为单链表的头插与头删效率最高,具体如下图;我们的诉求是最节省时间,当尾部插入结点时我们需要找到最后一个节点,当我们删除最后一个结点时,我们得同时知道倒数第二个结点;要想插入一个结点保持链表有序就得找到比该节点小的那一个结点,故需要遍历单链表,遍历链表的时间复杂度为O(N),故选D;一般情况下,链式队列出队操作只会修改队头结点,但是如果队列中只有一个结点时,如果我们出队,可能也会修改队尾指针;可画图理解,答案选C;原创 2023-08-02 17:30:59 · 620 阅读 · 0 评论 -
备战秋招 | 笔试强训20
A. 3B. 4C. 5D. 6。原创 2023-08-01 15:58:33 · 274 阅读 · 0 评论 -
备战秋招 | 笔试强训19
C选项,当我们第一个出D时,代表ABC已经入栈,此时我们出一个C,栈中还有AB,我们再入一个E,然后再出一个E,接着栈顶的元素应该是B而不是A,故C错误;D. 队空:end1==(end2+1) mod M;队满:end2==(end1+1) mod (M-1)D. 队空:end1==(end2+1) mod M;队满:end2==(end1+1) mod (M-1)队满:end2==(end1+1) mod (M-1)队满:end2==(end1+1) mod (M-1)公式,n0 = n2 + 1;原创 2023-07-31 16:43:43 · 586 阅读 · 0 评论 -
备战秋招 | 笔试强训18
最后将new出来的对象交给父类指针指向,父类指针调用test,test调用func,引发多态,父类指针调用虚函数,调用子类func,打印2;本题考察多态,我们创建了一个C类对象,C类对象继承了A类与B类,我们把new出来的对象的地址赋值给c,接着把从切片赋值给子类b1,这是我们再把b1赋值给类型完全没关系的A类指针a2,最后delete a2,此时会导致运行崩溃;题目考察C++中的异常,throw的后面是new一个A类对象,返回A类型指针,若是失败了,catch那里参数必须是A类型指针才可以;原创 2023-07-29 19:16:25 · 516 阅读 · 0 评论 -
备战秋招 | 笔试强训17
接着我们delete base对象,base对象是父类的指针,且指向的是子类对象,此时达成了多态,先析构子类,在析构父类,析构函数中调用的函数也不会有多态,因此打印分别B、A;此处考察vector中erase函数时迭代器失效问题,当我们删除vector中一个元素时,返回的是删除元素的下一个元素位置的迭代器,当vector有 100 300 300 300 300 500时,我们进入循环,首先判断第一个元素是否等于300,结果是不等于300,因此对迭代器进行++来到第二个元素的位置,进入下一个循环;原创 2023-07-28 16:47:42 · 387 阅读 · 0 评论 -
备战秋招 | 笔试强训16
首先我们观察题目,父类与子类中都有两个叫bar的函数,其中形参为int的是虚函数,并进行了重写,形参为char的与这个虚函数构成重载;接着我们调用int那个接口,这个接口声明成了虚函数,又是用父类的指针调用,构成多态,可是该指针原本指向的是一个子类对象,因此这里调用子类的那个虚函数,返回打印50;分别调用FuncA与FuncB时,pa调用FuncA函数时调用A类中的FuncA,调用FuncB时构成多态,调用子类的FuncB,接着pa2本身指向的就是父类,因此调用FuncA与FuncB时都是调用父类的;原创 2023-07-27 21:52:23 · 299 阅读 · 0 评论 -
备战秋招 | 笔试强训15
A. 公有成员和私有成员B. 私有成员和保护成员C. 公有成员和保护成员D. 私有成员,保护成员和公有成员。原创 2023-07-26 18:32:24 · 454 阅读 · 0 评论 -
备战秋招 | 笔试强训14
A. 构造函数B. 析构函数C. 内联成员函数D. 静态成员函数。原创 2023-07-25 21:23:14 · 387 阅读 · 0 评论 -
备战秋招 | 笔试强训13
A. 释放父类指针时能正确释放子类对象B. 释放子类指针时能正确释放父类对象C. 这样做是错误的D. 以上全错。原创 2023-07-24 21:55:24 · 308 阅读 · 0 评论 -
备战秋招 | 笔试强训12
而delete this这行代码,在语法层面是没问题的,可以通过编译阶段,但是,首先我们要清楚的是,这是在析构函数里,而delete会做两步工作,首先会调用该类的析构函数,再释放在堆上申请的空间;c1是一个该类对象,因此声明时会调用构造函数,而c2是该类型的指针,并不会调用构造函数,c3是new出来的一个该类对象的指针,new时,首先会开辟空间,然后再调用该类的默认构造;类是类,结构体是结构体,二者有本质区别的,C语言的结构体也并不能像C++中的类一样放函数,故A错误,其他选项均为正确描述;原创 2023-07-22 14:51:13 · 132 阅读 · 0 评论 -
备战秋招 | 笔试强训11
比如2和6,2和6不相等,6比较大,因此6往上找父亲3,接着继续比较还是不相同,3比较大,继续向上找父亲1,还是继续比较还是不同,2比较大,2往上找父亲1,此时再比较,相同,故1是他们的最近公共祖先;C选项,静态数据成员也属于类的成员,只要是类的成员都会被访问限定符限定;思路:本题主要是考察对位运算的使用,这里我们定义一个当前1的个数,与1的最大个数,用1与目标数字的每个比特位进行,如果遇到遇到1就给当前1的个数的变量反复++,遇到0,就开始于最大1个数进行比较,若大于则更新最大连续1的个数;原创 2023-07-21 11:19:47 · 93 阅读 · 0 评论 -
备战秋招 | 笔试强训10
本题考察对C++中const修饰的对象的理解,在C++中,const修饰的对象其实已经不是普通对象了,而是一个常量,类似于#define定义的常量,在编译阶段,会对常量所在的地方进行替换;Container类中,我们发现,我们首先声明了a对象,再声明b对象,而再初始化列表中,看着好像是先初始化b对象,在初始化a对象,实际上,类内成员初始化的顺序只与声明的顺序有关,故先初始化a,再初始化b,选C;其底层原理是编译阶段,函数名的修饰规则,C选项中的函数类型即返回值类型,与函数重载并无关系;原创 2023-07-20 17:16:54 · 179 阅读 · 0 评论 -
备战秋招 | 笔试强训9
A. privateC. publicD. 无定义。原创 2023-07-19 16:33:34 · 715 阅读 · 0 评论 -
备战秋招 | 笔试强训8
A. 所有类成员B. private或protected的类成员C. public的类成员D. public或private的类成员。原创 2023-07-18 17:18:24 · 282 阅读 · 0 评论 -
备战秋招 | 笔试强训7
A. 函数体含有循环语句B. 函数体含有递归语句C. 函数代码少、频繁调用D. 函数代码多,不常调用。原创 2023-07-16 20:59:16 · 163 阅读 · 0 评论 -
备战秋招 | 笔试强训6
A. a[i][j]原创 2023-07-16 18:46:35 · 408 阅读 · 0 评论 -
备战秋招 | 笔试强训5
A. 10,4B. 4,4C. 9,9D. 9,4。原创 2023-07-16 17:06:43 · 182 阅读 · 0 评论 -
备战秋招 | 笔试强训4
此题考查进制之间的转换以及各进制的前缀,首先我们明确计算机世界中,有许多进制,我们要记住最常用的机制的前缀,比如二进制的前缀为0B,八进制的前缀为0,十进制无前缀,十六进制的前缀为0X;首先是A结构体,第一个成员a为整型,占0-3字节的空间,b成员为short,必须再2的整数倍的地址处,因此占4-5字节,c成员为整型,必须为4的整数倍,因此占8-11字节,最后d为char类型,必须为1的整数倍,因此占12字节,有根据结构体对齐规则,必须为最大对齐数的整数倍,故一共占16字节,B类也同理推导;原创 2023-07-14 12:25:50 · 306 阅读 · 0 评论 -
备战秋招 | 笔试强训3
A.n=0;='\n')n++;B.n=0;='\n')n++;C.for(n=0;getchar()!='\n';n++);D.n=0;ch!='\n';n++);原创 2023-07-13 14:56:28 · 169 阅读 · 0 评论 -
备战秋招 | 笔试强训2
A. 宏定义不检查参数正确性,会有安全隐患B. 宏定义的常量更容易理解,如果可以使用宏定义常量的话,要避免使用const常量C. 宏的嵌套定义过多会影响程序的可读性,而且很容易出错D. 相对于函数调用,宏定义可以提高程序的运行效率。原创 2023-07-11 17:00:41 · 376 阅读 · 0 评论 -
备战秋招 | 笔试强训1
本栏目主要为准备备战秋招的小伙伴准备,博主会每天准备一些题目,如果有兴趣跟着博主每日一刷吧!加油加油!原创 2023-07-10 14:52:25 · 358 阅读 · 0 评论