1.猿辅导公司某研发小组一共有 12 名同学,其中 9 人能做后端开发,6 人能做前端开发。现在要抽调 4 名同学成立项目小组,负责公司的一项“机密”项目。其中 2 名同学做后端开发,2 名同学做前端开发。有多少种选派方法?
分析:由9+6=15>12可知,前端后端开发都能做的人数为(9+6-12)=3人,只会做后端开发的有(9-3)=6人,只会做前端开发的有(6-3)=3人。以前端后端都能做选取的人数为考察点。
②3人中选取1人,若该人做后端开发,则,若该人做前端开发,则;则共54+135=189种可能。
③3人中选取2人,若他们做后端开发,则,若他们做前端开发,则,若其中一人做前端开发一人做后端开发,则,则共有9+45+108=162种可能。
④3人中选取3人,其中必有两人一组,如两人做前端开发,另一人做后端开发,则,若两人做后端开发,另一人做前端开发,则,则共有18+9=27种可能。
所以,共有45+189+162+27=423种可能。
2.关于数据库,描述正确的有:
A.任意两行的主键值都不相同。(可举例学生表中学生ID)
B.主键列不允许NULL值。(一个表的主键可由多个关键字共同组成,并且关键字的列不能包含空值)
C.表可包含多个唯一约束,但每个表只允许一个主键。(唯一约束保证在一个字段或者一组字段里的数据与表中其它行的数据相比是唯一的)
D.唯一约束列允许NULL值。(声明为 PRIMARY KEY 的列不允许有空值,但是声明为 UNIQUE 的字段允许空值的存在)
3.有一个虚拟存储系统,若进程在内存中占3页,开始内存为空。若采用LRU页面淘汰算法,当执行如下访问页面序列
[1,2,3,4,1,2,5,1,2,3,5,4]会产生多少次缺页?
解析:LRU即最近最少使用,是一种常用的页面置换算法。
实现:最常见的实现是使用一个链表保存缓存数据,详细算法实现如下:
①新数据插入到链表头部;
②每当缓存命中(即缓存数据被访问),则将数据移到链表头部;
③当链表满的时候,将链表尾部的数据丢弃。
第一次:1
第二次:2,1
第三次:3,2,1
第四次:4,3,2(链尾的1被丢弃)
第五次:1,4,3(链尾的2被丢弃)
第六次:2,1,4(链尾的3被丢弃)
第七次:5,2,1(链尾的4被丢弃)
第八次:1,5,2(1被命中,不缺页)
第九次:2,1,5(2被命中,不缺页)
第十次:3,2,1(链尾的5被丢弃)
第十一次:5,3,2(链尾的1被丢弃)
第十二次:4,5,3(链尾的2被丢弃)
所以:共10次缺页。
4.假设解决某问题的算法复杂度为F(n),其中n为问题规模,该问题总是可以通过g(n)的代价划分为2个规模为n/2的同类子问题,即F(n)=2F(n/2)+g(n),当g(n)为O(n)时,F(n)为多少?
解析:可看做是2-路归并排序,合并时O(n),但是会发生O(logn)次合并,所以:F(n)是O(nlogn)。
5.猿辅导公司某部门月会上,有5名同学在依次领取入职周年的礼物,是一束鲜花。HR共准备了5种不同颜色的鲜花供他们挑选。则有且仅有2名同学挑选了相同颜色的鲜花的概率是多少?
分析:总共的可能性:,仅有2名同学挑选了相同颜色的可能性:(选出挑到相同颜色的2名同学,再从5种颜色中挑出一种,剩余的3名同学从剩余的4种颜色选)
所以:1200/3125=48/125.
6.
关于索引的使用:相比s3,s4会优先使用age_index.
7.关于HTTP协议,正确的表述有:
A.HTTP是无状态协议
B.HTTP是应用层协议
C.HTTP是基于文本的协议
D.HTTP状态码200表示成功
8.关于进程和线程,正确的表述有:
A.同一进程内的线程共享内存等系统资源
B.进程在共享内存区内可以进行通信
C.进程有独立的虚拟地址空间
D.线程可以创建另外一个线程
9.将 A B C D 四个元素次序进栈(中间可能有出栈操作,例如 A 进栈后出栈,B 再进栈),则可能的出栈系列是
BDCA. 解析:关键记住栈操作的原则:先进后出。
10.关于TCP协议,表述正确的有:
A.TCP是面向连接的协议
B.TCP是基于字节流的传输层通信协议
C.TCP提供了拥塞控制的机制(采用拥塞控制的算法有:慢开始,拥塞避免,快重传,快恢复四种)
D.TCP属于传输层协议