刷题训练营
文章平均质量分 92
刷题训练营
Hey pear!
空杯心态 C/C++ 嵌入式
展开
-
笔试强训48天——day30
A 非常频繁的换页活动B 非常高的CPU执行活动C 一个极长的执行进程D 一个极大的虚拟内存正确答案:A内存抖动:内存页面的频繁更换,导致整个系统效率急剧下降,这个现象称为内存抖动。抖动一般是内存分配算法不好,内存太小引或者程序的算法不佳引起的页面频繁从内存调入调出。原创 2023-01-18 21:25:56 · 904 阅读 · 0 评论 -
笔试强训48天——day29
A 200B =200D 都有可能正确答案:B1.如果两个线程并发的执行,线程A执行完毕,线程B执行,则最终的值为2002.如果两个线程并行的执行,有可能就会导致程序结果的二义性,则最终的结果值有可能是小于200。原创 2023-01-18 21:22:24 · 856 阅读 · 2 评论 -
笔试强训48天——day28
B.多线程程序为了减少线程IO的时间,可以把线程使用的数据提前缓存起来,提高程序的运行效率C选项:尺寸较小的数据可以放到缓存当中,因为比较小,不会吃掉缓存的空间。A选项:访问的概率相等,且独立,就失去了缓存的意义,因为无法区分到底缓存什么数据,能够提高程序的运行效率。缓存本质上是将在磁盘的数据提前缓存在内存当中,从而减少程序访问获取数据时的IO操作次数缓存━般会将高频访问的数据,提前读到内存当中缓存起来。数学问题:总任务单位是1,A的写工作效率是1/10,B的写工作效率是1/6,C的读工作效率是1/15。原创 2023-01-18 21:17:34 · 1195 阅读 · 0 评论 -
笔试强训48天——day27
装入程序是,值将程序的一部分装入内存,而将其余部分留在外存,就可以启动程序执行。2.计算进位的值:与按位与的值,再左移一位一样(按位与:两个全为1就是1,有0就是0)(num1&num2)原创 2023-01-18 19:49:11 · 578 阅读 · 0 评论 -
笔试强训48天——day26
有三阶的时候可以有 f(3) =1+f(2)+f(1)=4;+f(1) (第一个1是跳n阶只有一种方法)依次类推,得到类推公式有n阶时:f(n)=2^(n-1)当打开一个文件时,操作系统会创建一个文件控制块,并返回一个文件描述符给程序员,所以首次打开一个文件的时候,是文件控制块读入到内存中。单处理器——单个cpu——即使有再多的进程都是并发的去运行的——在同一时刻,只有一个进程可以拥有cpu资源。每组数据包含两个整数n (1≤n≤2^128) 和r (1≤r≤2^128),分别代表喵的身长和碗的半径。原创 2023-01-14 21:35:45 · 354 阅读 · 1 评论 -
C++——哈希练习题
输出结果中的每个元素一定是 唯一 的。A:依次读取文件A中的query,i = Hash(query)%1000,这个query就进去Ai小文件。B:依次读取文件B中的query,i = Hash(query)%1000,这个query就进去Bi小文件。输入:nums1 = [4,9,5], nums2 = [9,4,9,8,4]输入:nums1 = [1,2,2,1], nums2 = [2,2]输入:nums = [5,1,5,2,5,3,5,4]输入:nums = [2,1,2,5,3,2]原创 2022-12-23 20:32:49 · 479 阅读 · 1 评论 -
笔试强训48天——day25
表的规则是:n对应的值是矩阵X的n次方的左上角,如果这个数不足4位则用0填充,如果大于4位的则只输出最后4位。可重入函数可认为是可以被中断的函数,自动变量定义的时候才被创建,函数返回是,系统收回空间,它是局部作用域变量,不需要互斥量,可重入函数对全局变量才需要互斥量保护。再比如39,把3 和9 加起来得到12,由于12 不是一位数,因此还得把1 和2 加起来,最后得到3,这是一个一位数,因此3 是39 的数根。比如,对于24 来说,把2 和4 相加得到6,由于6 是一位数,因此6 是24 的数根。原创 2022-12-13 23:00:22 · 855 阅读 · 0 评论 -
笔试强训48天——day24
A O(n2)、O(n2)、O(nlog2n)B O(nlog2n)、、O(n^2)、O(nlog2n)C O(n)、O(n2)、O(n2)D O(nlog2n)、O(n2)、O(n2)正确答案:A A 标识表结点中首结点的位置B 算法实现上的方便C 使单链表至少有一个结点D 说明单链表是线性表的链式存储实现正确答案:BA 遍历链表B 链表深拷贝C 链表反转D 单链表转变为循环链表正确答案:D A 3,2,4,1,1;(^(+-B 3,2,8;(^-C 3,2,4,2,2;(^(-原创 2022-12-06 23:10:42 · 559 阅读 · 0 评论 -
笔试强训48天——day23
正确答案:C A各数据结点的存储空间可以不连续,但它们的存储顺序与逻辑顺序必须一致B 各数据结点的存储顺序与逻辑顺序可以不一致,但它们的存储空间必须连续C 进行插入与删除时,不需要移动表中的元素D 以上说法均不正确正确答案:C A 逻辑上相邻的结点物理上不必邻接B 插进、删除运算操纵方便,不必移动结点C 所需存储空间比线性表节省D 无需事先估计存储空间的大小正确答案:C A h->next=s;B s->next=h;C s->next=h;h->next=s;D s->next=h->原创 2022-12-05 23:41:18 · 654 阅读 · 0 评论 -
笔试强训48天——day22
A O(1)B O(N)C O(logN)D O(N*logN)正确答案:B A p->nextNULLB p->nexthC p->next->nexthD p->data-1正确答案:B A p->Llink=q;q->Rlink=p;p->Llink->Rlink=q;q->Llink=q;B p->Llink=q;p->Llink->Rlink=q;q->Rlink=p;q->Llink=p->Llink;C q->Rlink=p;q->Llink=p->Llink;p->Llink原创 2022-12-04 22:13:45 · 456 阅读 · 1 评论 -
笔试强训48天——day21
例如有6张牌,最开始牌的序列是1,2,3,4,5,6。右手拿着4,5,6。在洗牌过程中按顺序放下了6,3,5,2,4,1。把这六张牌再次合成一组牌之后,我们按照从上往下的顺序看这组牌,就变成了序列1,4,2,5,3,6。现在需要洗2n张牌,从上到下依次是第1张,第2张,第3张一直到第2n张。首先,我们把这2n张牌分成两堆,左手拿着第1张到第n张(上半堆),接着就开始洗牌的过程,先放下右手的最后一张牌,再放下左手的最后一张牌,接着放下右手的倒数第二张牌,再放下左手的倒数第二张牌,直到最后放下左手的第一张牌。原创 2022-11-29 15:01:07 · 844 阅读 · 0 评论 -
笔试强训48天——day20
A 3B 4C 5D 6正确答案:A入栈顺序:A、B、C、D、E、F出栈顺序:B、D、C、F、E、A先入AB出B,再入CD(此时栈中含有数据:ACD)出DC,再入EF(此时栈中含有数据:AEF)出FEA最多也只用了三个。原创 2022-11-28 17:16:07 · 290 阅读 · 0 评论 -
笔试强训48天——day19
二叉树的性质:对任何一棵二叉树, 如果度为0其叶结点个数为n0 , 度为2的分支结点个数为 n2,则有 n0=n2 +1。输入文件最多包含 10 组测试数据,每个数据占一行,仅包含一个正整数 n( 1原创 2022-11-10 22:34:34 · 1103 阅读 · 1 评论 -
二叉树进阶oj题
百度百科中最近公共祖先的定义为:“对于有根树 T 的两个节点 p、q,最近公共祖先表示为一个节点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。给定两个整数数组 preorder 和 inorder ,其中 preorder 是二叉树的先序遍历, inorder 是同一棵树的中序遍历,请构造二叉树并返回其根节点。给你二叉树的根节点 root ,请你采用前序遍历的方式,将二叉树转化为一个由括号和整数组成的字符串,返回构造出的字符串。递归调用太深,容易奔溃。原创 2022-11-02 21:50:44 · 429 阅读 · 15 评论 -
笔试强训48天——day17
以上三角形的数阵,第一行只有一个数1,以下每行的每个数,是恰好是它上面的数、左上角数和右上角的数,3个数之和(如果不存在某个数,认为该数就是0)。写出一个程序,接受一个由字母、数字和空格组成的字符串,和一个字符,然后输出输入字符串中该字符的出现次数。A 封装,把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对。D 覆盖是指不同的函数使用相同的函数名,但是函数的参数个数或类型不同。C 和类的静态成员函数与非类的成员函数相比,虚函数的效率较低。输出输入字符串中含有该字符的个数。原创 2022-10-31 17:09:30 · 512 阅读 · 2 评论 -
笔试强训48天——day18
增加成员可能会导致扩容——开一块新空间然后将旧空间的内容拷贝下来,将指针指向新空间,释放旧空间——会导致原来存储的位置发生改变。有一种兔子,从出生后第3个月起每个月都生一只兔子,小兔子长到第三个月后每个月又生一只兔子。返回不区分大小写的匹配结果,匹配成功输出true,匹配失败输出false。返回不区分大小写的匹配结果,匹配成功输出true,匹配失败输出false。例子:假设一只兔子第3个月出生,那么它第5个月开始会每个月生一只兔子。一月的时候有一只兔子,假如兔子都不死,问第n个月的兔子总数为多少?原创 2022-10-31 17:01:22 · 376 阅读 · 0 评论 -
笔试强训48天——day15
A 公有成员和私有成员B 私有成员和保护成员C 公有成员和保护成员D 私有成员,保护成员和公有成员正确答案:C私有:类里类外都不能访问。原创 2022-10-30 16:21:13 · 511 阅读 · 2 评论 -
笔试强训48天——day14
A 构造函数B 析构函数C 内联成员函数D 静态成员函数正确答案:B。原创 2022-10-30 16:14:21 · 446 阅读 · 0 评论 -
笔试强训48天——day16
例如:28,它有约数1、2、4、7、14、28,除去它本身28外,其余5个数相加,1+2+4+7+14=28。扑克牌游戏大家应该都比较熟悉了,一副牌由54张组成,含3~A、2各4张,小王1张,大王1张。输入两手牌,两手牌之间用"-“连接,每手牌的每张牌以空格分隔,”-"两边没有空格,如:4 4 4 4-输入两手牌,两手牌之间用"-“连接,每手牌的每张牌以空格分隔,”-"两边没有空格,如 4 4 4 4-(2)除了炸弹和对王可以和所有牌比较之外,其他类型的牌只能跟相同类型的存在比较关系(如,对子跟对。原创 2022-10-29 16:59:21 · 894 阅读 · 0 评论 -
笔试强训48天——day13
A 释放父类指针时能正确释放子类对象B 释放子类指针时能正确释放父类对象C 这样做是错误的D 以上全错正确答案:A子类里面已经完整的包含了一个父类析构的时候只看类型——这里就只会调用父类析构函数会造成资源的泄漏定义成虚函数之后,形成一种多态,释放的时候就会自动去调用子类的析构函数}原创 2022-10-29 15:32:06 · 1031 阅读 · 0 评论 -
笔试强训48天——day12
给定两个32位整数n和m,同时给定i和j,将m的二进制数位插入到n的二进制的第j到第i位,保证n的第j到第i位均为零,且m的二进制位数小于等于i-j+1,其中二进制的位数从0开始由低到高。在类中,如果用户没有显示定义任何构造函数,则编译器会生成一个无参的构造函数,但是用户一旦定义,则编译器不再生成。C 引用声明后,引用的对象不可改变,对象的值可以改变,非const指针可以随时改变指向的对象以及对象的值。引用:是一个别名,与其引用的实体公用一份内存空间,编译器不会给引用变量重新开辟新的内存空间。原创 2022-10-28 13:55:04 · 872 阅读 · 0 评论 -
笔试强训48天——day11
A 5B 4C 3D 9正确答案:A}B fun(1.0, 2)//不能准确的隐式提升D fun(1, 2.0)//可以提升成float类型正确答案:B函数模板实例化:fun隐式实例化——传递的两个参数类型必须要一致显示实例化——两个参数类型可以不同,但是必须要能发生隐式转换成一致的。原创 2022-10-26 21:24:51 · 935 阅读 · 1 评论 -
笔试强训48天——day10
给定一个二维数组board,代表棋盘,其中元素为1的代表是当前玩家的棋子,0表示没有棋子,-1代表是对。MyClass a[5]——5个myclass对象的一个数组——调用5次myclass类的构造函数。大于1符号,所以得25分;与该成员在初始化列表中出现的次序没有关系,真正的初始化次序与成员变量在类中生成的先后次序保持一致。注意:此处的const实际修饰的是this指针,表明在该成员函数中,不能修改非静态成员变量。D 拷贝初始化构造函数的作用是将一个已知对象的数据成员值拷贝给正在创建的另一个同类的对象。原创 2022-10-23 17:56:20 · 687 阅读 · 0 评论 -
笔试强训48天——day9
A privateC publicD 无定义正确答案:A在重载一个运算符为成员函数时,其参数表中没有任何参数,这说明该运算符是 ( )。原创 2022-10-23 14:20:51 · 543 阅读 · 2 评论 -
笔试强训48天——day8
A 所有类成员B private或protected的类成员C public的类成员D public或private的类成员正确答案:C。原创 2022-10-22 18:04:37 · 702 阅读 · 4 评论 -
笔试强训48天——day6
A a[i][j]C((a+i)+j)D(a+i4+j)正确答案:DB a数组第1行第2列元素的地址D a数组第1行第2列元素的值正确答案:Ba是二维数组,二维数组中的每个元素都是一维数组*(a+1)访问数组第1个元素+2第二列元素的地址。原创 2022-10-21 20:46:00 · 194 阅读 · 2 评论 -
笔试强训48天——day7
A 函数体含有循环语句B 函数体含有递归语句C 函数代码少、频繁调用D 函数代码多,不常调用正确答案:C内联函数概念:inline修饰的函数称为内联函数特性:在编译阶段,会将内联函数展开——将函数调用直接使用在函数体来进行替换作用:少了函数调用参数压栈以及创建栈帧等开销——可以提高程序运行的效率注意:inline是一个建议性的关键字——一般情况 建议:没有循环、没有递归、函数体不是很长A 类定义中包括数据成员和函数成员的声明B 类成员的缺省访问权限是保护的。原创 2022-10-19 21:24:46 · 1693 阅读 · 2 评论 -
笔试强训48天——day5
A 10,4B 4,4C 9,9D 9,4正确答案:Asizeof求变量所对应的类型大小——10有两个\0strlen求字符串的有效长度,不包括\0,所以遇到第一个\0就会停止。原创 2022-10-18 16:22:27 · 647 阅读 · 6 评论 -
笔试强训48天——day4
输入为一行,一共4个整数,分别为A - B,B - C,A + B,B + C,用空格隔开。A,B,C三个人是好朋友,每个人手里都有一些糖果,我们不知道他们每个人手上具体有多少个糖果,但是我们知道。A - B, B - C, A + B, B + C. 这四个数值.每个字母代表每个人所拥有的糖果数.输出为一行,如果存在满足的整数A,B,C则按顺序输出A,B,C,用空格隔开,行末无空格。按位异或^:遇到1就是1,两个相同都是1或都是0,就是0。假设:数组X的起始地址为start,总共有m行,n列。原创 2022-10-17 17:51:30 · 298 阅读 · 0 评论 -
笔试强训48天——day3
A n=0;=‘\n’)n++;B n=0;=‘\n’)n++;C for(n=0;getchar()!=‘\n’;n++);D n=0;ch!=‘\n’;n++);正确答案:D初始化过程只会执行一次,ch=getchar()只获取了一次字符以下代码,代码执行之后ptr指向的内容是?ptr += 5;//指向f字符B fgC efgD defg正确答案:BA 4B 48C 192D 12正确答案:B**a[3][4] 三行四列的数组,指针类型。原创 2022-10-15 18:10:55 · 660 阅读 · 1 评论 -
笔试强训48天——day2
A 宏定义不检查参数正确性,会有安全隐患B 宏定义的常量更容易理解,如果可以使用宏定义常量的话,要避免使用const常量C 宏的嵌套定义过多会影响程序的可读性,而且很容易出错D 相对于函数调用,宏定义可以提高程序的运行效率正确答案:B宏定义没有预处理检测,无法进行调试,要尽量使用const常量对于函数调用来说,宏定义没有创建函数栈帧和函数压栈的开销,所以可以提高效率正确答案:DA 指针数组B 数组指针C 函数指针,有一个int参数,返回值类型也是int。原创 2022-10-13 22:18:35 · 520 阅读 · 1 评论 -
笔试强训48天——day1
A charB intC doubleD float正确答案:C自动提升,小->大int -21亿~21亿308由此可见double最大,所以在运算中char与int会自动提升为doubleA *p+=1;B (*p)++;C ++(*p)D *p++正确答案:D*p++ 后置++,先在++前对p解引用获取到year变量的值,然后再对指针p进行++原创 2022-10-11 22:25:15 · 1909 阅读 · 3 评论 -
vector——练习题
由于在某些语言中不能改变数组的长度,所以必须将结果放在数组nums的第一部分。更规范地说,如果在删除重复项之后有 k 个元素,那么 nums 的前 k 个元素应该保存最终结果。给你一个 升序排列 的数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。不要使用额外的空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。将最终结果插入 nums 的前 k 个位置后返回 k。不需要返回值的情况,要将dst之后的数据都删掉。原创 2022-10-10 17:26:40 · 308 阅读 · 3 评论 -
string——练习题
字符串最后一个单词的长度//cin>>str //输入多个值之间是用空格或换行间隔 //空格后的字符串依旧在缓冲区,只能取空格之前的字符串长度,不符合题意 getline(cin , str);//找空格 if(pos!= string :: npos) //有空格的情况 {} else //没有空格的情况 {} }原创 2022-10-10 17:20:05 · 285 阅读 · 0 评论 -
类和对象——练习题
n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?sum是solution的友元。对象实例化会自动调用构造函数。原创 2022-10-10 17:10:48 · 147 阅读 · 0 评论 -
暑期刷题不松懈——C/C++(2)
A((a+1)+1)CD*(a[1]+1)解析&数组名,这里的数组名表示整个数组,&数组名,取出的是整个数组的地址假如inta[3][4]={{1,2,3,4,}{5,6,7,8}{9,10,11,12}};这个是二维数组,a[1][1]第二行第二列6A&a[0][0]表示取出首元素(第一行第一列)地址+5表示取出第六个元素地址,往后推刚好是第二行第二列的元素。*代表的就是取出元素BCD*(a[1]+1)与B是等价的。...原创 2022-07-18 17:10:11 · 377 阅读 · 5 评论 -
暑期刷题不松懈——C/C++(1)
AC解析二维数组可以省略前一个数int*s[8]s是数组int(*s)[8]s是一个指向数组的指针所以AB都是错误写法。原创 2022-07-18 16:51:50 · 511 阅读 · 1 评论