1、[单选题]

内存页式管理方式中,首先淘汰在内存中空闲(未被修改或读取)时间最长的帧,这种替换策略是_____.()

A. 先进先出(FIFO)

B. 最近最少使用法(LRU)

C. 优先级调度

D. 轮转法

选B

2、[单选题]

进程P1使用资源情况:申请资源S1..•申请资源S2,…释放资源S1;进程P2使用资源情况:申请资源S2,…申请资源S1,…释放资源S2,系统并发执行进程P1,P2,系统将()

A 必定产生死锁

B 可能产生死锁

C 不会产生死锁

D 无法确定是否会产生死锁

选B

3、[单选题]

引用和指针,下面说法不正确的是:()

A 引用和指针在声明后都有自己的内存空间

B 引用必须在声明时初始化,而指针不用

C 引用声明后,引用的对象不可改变,对象的值可以改变,指针可以随时改变指向的对象以及对象的值

D 空值NULL不能引用,而指针可以指向NULL。

选A

引用没有自己的内存空间,但指针有自己的内存空间

4、[单选题]

关于排序,下面说法不正确的是

A 快排时间复杂度为O(N*logN),空间复杂度为O(logN)

B 归并排序是一种稳定的排序,堆排序和快排均不稳定

C 序列基本有序时,快排退化成冒泡排序,直接插入排序最快

D 归并排序空间复杂度为O(N),堆排序空间复杂度的为O(logN)

选D

归并排序和堆排序的空间复杂度均为O(1),归并排序时间复杂度为O(1)

5、[单选题]

用二进制来编码字符串“abcdabeaa”,需要能够根据编码,解码回原来的字符串,最少需要多长的二进制字符串?

A 17

B 18

C 19

D 29

选C

按照哈夫曼编码做

6、[单选题]

TCP关闭过程中,主动关闭方不可能处于的状态是()

A FIN_WAIT_1

B FIN_WAIT_2

C CLOSE_WAIT

D TIME_WAIT

选C

7、[单选题]

已知二叉树的前序序列为BCDEFAG,中序序列为DCFAEGB,请问后序序列为___

A DAFEGCB

B DAEGFCB

C DAFGECB

D DAEFGCB

选C

8、[?][单选题]

请写出下面程序的输出:

#include <iostream>
using namespace std;
unsigned intGetTestNum(){static unsigned inta= 0;  staticunsigned int b= 1;  int c= a + b;a = b;b = c;return c;
}
int main(int argc, char* argv[]) {for(int i= 0; i < 9; i++) {GetTestNum();}   cout << GetTestNum()<< endl;
}

A 1

B 144

C 89

D 55

选C

static修饰的值在运行期间只有一个副本

9、[单选题]

如下函数,在32 bit系统foo(2^31-3)的值是:

int foo(int x){ return x&-x;}

A 0

B 1

C 2

D 4

选C

2与31异或,10与11111异或后得11101,3为11,11101-11=11010

-11010相当于11010取反加1为00110

11010&00110=10,结果为2

10、[?][单选题]

本流程图描述了某子程序的处理流程,现要求用白盒测试法对子程序进行测试。根据白盒测试常用的以下几种方式:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、多重条件覆盖(条件组合覆盖)、路径覆盖六种覆盖标准,从供选择的答案中分别找出满足相应覆盖标准的最小的测试数据组并简述各种测试方法。

流程图:

条件覆盖 ,是指选择足够的测试用例,使得运行这些测试用例时,判定中的每个条件的所有可能结果至少出现一次;请选择能够满足条件覆盖的选择项

A x=3 y=3 z=0;x=1 y=2 z=1

B x=1 y=2 z=0;x=2 y=1 z=1

C x=4 y=2 z=0;x=3 y=3 z=0; x=2 y=1 z=0; x=1 y=1 z=1

D x=4 y=2 z=0;x=1 y=2 z=1; x=2 y=1 z=0; x=1 y=1 z=1

E x=4 y=2 z=0

F x=4 y=2 z=0;x=1 y=1 z=1

选B

别人的解析:最少的选择就是是否和否是结合,就可以达到目的

我觉得就算按照解析也应该选A啊,这个题目答案错了?

11、[单选题]

int func(int x){ int countx= 0; while(x){countx++;x= x&(x-1);  //1}return countx;
} 

如果x=254,函数返回值为:

A 6

B 7

C 8

D 0

选B

解析:

1处是x = x&(x-1);为求x的二进制表达式有多少个1

改成x =x|(x-1);为求x的二进制表达式有多少个0

12、[单选题]

在进程状态转换时,下列哪一种状态是不可能发生的:

A 等待态->运行态

B 运行态->就绪态

C 运行态->等待态

D 就绪态->运行态

选A

解析:正在运行的进程遇到io请求就会阻塞(等待),阻塞(等待)的进程得到io设备就会转成就绪状态,就绪状态的进程在cpu调度下,会给该进程分配时间片,分配到时间片段后就会执行,对于正在执行的进程,如果它的时间片段用完了的话,就会转化成就绪状态。

13、[单选题]

如果i=5;那么a=(++i)--;之后,a和i的值各是多少?

A a=6.i=6

B a=5.i=6

C a=6.i=5

D a=5.i=5

选C

解析:(++i)的值为6,i的值变为6

(++i)--的值为6(先幅值再减1),i的值变为5

14、[单选题]

DNS协议位于OSI模型中的哪一层:

A 应用层

B 网络层

C 传输层

D 会话层

选A

15、[单选题]

下列算法中不属于稳定排序的是:

A 插入排序

B 冒泡排序

C 快速排序

D 归并排序

选C

16、[单选题]

二叉树的根节点计为第1层结点,则第9层最多有多少个结点?

A 18

B 256

C 128

D 64

选B

解析:满二叉树,节点个数是2^(k-1),所以就是2^8=256

17、[单选题]

下列描述,正确的一共有多少个?

1)const char *p,这是一个常量指针,p的值不可修改

2)在64位机上,char*p= “abcdefghijk”; sizeof(p)大小为12

3)inline会检查函数参数,所以调用开销显著大于宏

4)重载是编译时确定的,虚函数是运行时绑定的;

A 1

B 2

C 3

D 4

选A

A 应该是p指向的值不可修改,p是指针可以修改

B 32位编译器:32位系统下指针占用4字节

char :1个字节

char*(即指针变量): 4个字节(32位的寻址空间是2^32, 即32个bit,也就是4个字节。同理64位编译器)

short int : 2个字节

int:  4个字节

unsigned int : 4个字节

float: 4个字节

double:  8个字节

long:  4个字节

long long:  8个字节

unsigned long:  4个字节

64位编译器:64位系统下指针占用8字节

char :1个字节

char*(即指针变量): 8个字节

short int : 2个字节

int:  4个字节

unsigned int : 4个字节

float: 4个字节

double:  8个字节

long:  8个字节

long long:  8个字节

unsigned long:  8个字节

只有第四个是正确的

18、[单选题]

下面关于linux文件系统的软链接文件和硬链接文件,描述不正确的是

A 软链接文件可以指向另外一个文件系统的文件

B 硬链接文件会增加被指向文件的引用计数

C 删除被指向文件时,对应的软链接文件会失效

D 删除被指向文件时,对应的硬链接文件会失效

选D

19、下列描述,错误的是:

A 文件系统IO自带缓冲,以减小对磁盘文件的访问,提高系统性能

B 通过select和epoll能同时监听处理多个IO事件

C 使用linuxIPC中的pipe机制,生产者写入数据到消费者消费数据,依次要经过如下拷贝:生产者用户空间到生产者内核控件的拷贝,生产者内核空间到消费者内核空间的拷贝,消费者内核空间到消费者用户空间的拷贝。

D C标准IO库自带缓冲,以减小fread或fwrite等带来的系统开销。

选C

20、有以下函数,其作用是什么?

int func(int num, int i) {

int tmp = ~((1 << (i + 1)) -1);

return num & tmp;

}

A 检查num的i位是否为0

B 将num的倍数据取反

C 将num最高位到i位(含)清零

D 将num的i位到0位(含)清零

选D

位运算:把1从最右边的一位向左移动 i+1 位,然后再减 1 ,这时最右边的 第 i 到第 0 位都变成1,其余位都为0.然后取反,也就是从右边第 i 位到第0位都变成0,其余位为1,与num做&运算,如果num从第 i 位到第 0 位都为0

21、[单选题]

关于epoll和select,以下说法哪个是错误的:

A select单个进程可监视的fd数量受到限制

B epoll和select都可以实现同时监听多个I/O事件的状态

C epoll基于轮训机制,select基于操作系统支持的I/O通知机制

D epoll支持水平触发和边沿触发两种模式

选C

c说反了,select是轮询

22、[单选题]

下列不属于标准冯诺依曼计算机体系结构部件的是

A 输入与输出设备

B 控制器

C 寄存器

D 运算器

选C

冯·诺依曼体系结构计算机必须具备五大基本组成部件,包括:输人数据和程序的输入设备、记忆程序和数据的存储器、完成数据加工处理的运算器、控制程序执行的控制器、输出处理结果的输出设备。

23、[单选题]

n个节点的二叉树,最多可以有多少层?

A n/2

B log(n)

C n-1

D n

选D

假定根节点层次为1,一层一个节点,则有n层

24、[单选题]

如下那一段代码不能给地址0xaae0275c赋值为1?

A volatile int*p = (int *) 0xaae0275c; *p=1;

B volatile int*p = (int *) 0xaae0275c; p[0] = 1;

C *(volatileint *) 0xaae0275c = 1;

D (volatileint *) 0xaae0275c[0] = 1;

选D

A、B选项都是定义一个指针p指向0xaae0275c这个地址,解引用后再赋值;

C选项把0xaae0275c转换成指针,再加*解引用后赋值

25、[单选题]

下面关于二叉树的说法正确的是:

A 满二叉树是完全二叉树

B 满二叉树中有可能存在度数为1的节点

C 完全二叉树是满二叉树

D 完全二叉树中某个节点可以没有左孩子,只有右孩子

选A

A 对

B 满二叉树无度为1的节点

C 完全二叉树不是满二叉树,满二叉树一定是完全二叉树

D 完全二叉树中度为1的节点肯定是只有左孩子没有右孩子

26、[单选题]

已知二叉树的前序序列为BCDEFAG,中序序列为DCFAEGB,请问后序序列为___

A DAFEGCB

B DAEGFCB

C DAFGECB

D DAEFGCB

选C

27、[单选题]

下列描述,错误的是

A 函数参数传值,相比传指针,很多时候开销会更大

B 函数使用引用做形参时,无法对该引用形参赋值为NULL

C 函数返回指针时,要避免指针指向内部临时变量

D 函数传值时,如果函数体内对形参值做修改,同样会影响到实参的值

选D

在函数体内修改形参是不会影响实参值的

28、[?][单选题]

关于可重入和线程安全,下面描述不准确的是:

A 可重入函数一定线程安全,而线程安全函数不一定可重入

B 单线程环境中,使用不可重入函数并不会引发问题

C 使用互斥变量,确保非线程函数被串行调用,并不会引发问题。

D 函数最好别使用全局变量,以便保证线程可安全或可重入。

选B

可重入函数可以在任意时刻被中断,稍后再继续运行,不会丢失数据。不可重入(non-reentrant)函数不能由超过一个任务所共享,除非能确保函数的互斥

可重入的函数并非是安全的。

线程安全的肯定是可重入的

不可重入的函数一定不是线程安全的

按照这个解释不是应该选A吗?(黑人问号....)

29、[问答题]

题目描述

每天有千万级的用户在使用滴滴出行,来改善他们的出行体验。同时,也给我们的许多后台系统带来了大量的请求,后台系统每秒承受着数万级的请求数,为了减轻大量请求带来的压力,我们通常采用的是缓存技术。

下图有一个典型的采用了分布式缓存技术的系统A,A提供了一个毫秒级的数据查询的功能,数据内容大约1T,缓存在分布式cache系统中,上游其他系统,通过内部协议请求系统A中的server获取数据。系统A的数据内容,每天凌晨进行一次全量更新。

请针对系统A,给出一个测试设计,至少包括以下内容:1、对被测对象的系统架构分析;2、枚举所有测试点以及测试方法的简单设计;3、指出该系统存在的隐患及改进方向;

30、[问答题]

题目描述

滴滴出行平台的出租车、快车、专车等业务都是基于地理位置的服务,乘客发出订单后,附近的司机很快能够收到订单;下面是一张简化版的分单模型设计图,以及简要介绍:

(1) 乘客创建订单时,会将订单信息写入订单池,取消订单则删除,司机出车时,将司机信息写入司机池,收车时删除;

(2) 订单分配模块会拉取到订单和司机的信息,其中包含地理位置信息,根据位置进行匹配,最终为司机分配1个5公里范围内的订单;

请根据以上的信息,回答如下问题:

1.分析该系统各模块的功能及特点;

2.对该系统做出功能和性能的测试设计;

1.分析如下:

(1)订单池:功能:a.包含用户的基本信息,比如用户名,用户电话,所在位置,可选车的类型(出租车、私家车或其他车型)

b.允许多用户同时登录,互不影响

c.创建订单需要填写上车的位置,目的地地址,预约的时间以及车型,在规定时间内可删除订单

d.订单创建好后,将信息传递给订单分配模块,若成功删除订单,则订单池中的订单信息被删除

特点:允许多用户同时登陆,具有数据录入,删除和传递功能

(2)司机池:

功能:

a.包含司机的基本信息,比如 司机名, 司机电话,所在位置,所开车的类型(出租车、私家车或其他车型)和车牌号,是否空车

b.允许多用户同时登录,互不影响

c.接受订单后,在司机池录入出车信息;订单完成后,在司机池录入收车信息

特点:允许多用户同时登陆,具有数据录入,删除和传递功能,与订单池类似

(3)订单分配模块:

功能: 拉取到订单和司机的信息,其中包含地理位置信息,根据位置进行匹配,最终为司机分配1个5公里范围内的订单

特点:是订单池和司机池的控制和分配中心,负责两者信息的匹配与调度

2.(1)功能测试:

登陆模块测试:

a.用户和司机的登陆测试,对输入(账号和密码)进行等价类和边界值分析相结合的用例测试,检测能否成功登陆

b.测试登陆界面的风格与整体是否相融合,有无错别字

c.鼠标点击文本框,能成功选中,并且鼠标由箭头转换为在相应文本框中开始位置的竖线光标

订单模块 :

a.订单界面包含所有需求说明书上的功能按钮,且链接正常,可成功转到相应界面

b.输入用户的上车位置信息是由GPS定位选择还是自己手动输入

c.填写完所有信息后,订单创建按钮变高亮,点击后出现订单已创建成功,正等待司机接收的提示信息

d.司机接收订单后会弹出相应提示,告知用户司机的一些基本信息,比如司机当前所在位置,到达所需时间等。

e.订单提交后,能在司机接收前删除订单。

司机模块:

a.登陆后可选择出车或收车状态

b.可以成功接收订单,接收订单后可获得用户的一些基本信息,比如名字,电话,所在位置以及目的地

订单分配模块:

a.可以获取订单池和司机池的订单和出车信息

b.可以对两边的信息,根据位置进行匹配,并给司机分配订单

c.订单被司机接收之后,向用户反馈司机的信息。

(2)性能测试:

a.由登陆界面进入系统要多久

b.订单池最多能容纳多少个用户的订单,司机池最多能容纳多少个司机的信息

c.在同一时刻,最多能允许多少个用户登陆

b.用户登陆后,能在系统呆多长时间

e.是否支持网页登陆

31、[问答题]

题目描述

随着滴滴的业务压力急剧增加,保持服务稳定性成了滴滴工程师的重中之重。为了能够以最小的风险完成上线,工程师们希望在上线过程中能够将一个城市的流量引到特定机器进行观察。为此,工程师小A对现有的上线流程进行了改造,架构图变化如下:

其中,router流量转发模块需要承接所有的外部流量,根据下游的服务器规模平均分配流量, 确保下游机器的压力是均衡的。在本次改造中,router模块将新增一个上游流量解析函数,该函数读取特定的城市配置文件,并且解析上游的流量(url),提取city参数值,然后对city值进行判断;如果city在配置文件中有配置,那么将流量转发到小流量机器,否则,仍然按照原有的逻辑分发流量。

而为了能够控制小流量的城市,小A开发了一个配置系统,该系统可以实时修改城市配置文件。

测试工程师小B拿到测试任务后,进行了简单的分析,他意识到router承载了巨大的流量,新增函数会对整体性能产生很大的影响,同时该模块对全系统的稳定性有决定性作用,为此需要对测试方案进行精心设计。

现在,请帮助小B给出一个完整的测试方案,至少包括以下内容:

1、对被测对象进行风险分析

2、列举所有的测试点以及测试方法的简单设计

【牛客网】滴滴出行2017秋招测试岗笔试真题汇总相关推荐

  1. 滴滴出行2017秋招笔试真题-编程题汇总_Java实现

    滴滴出行2017秋招笔试真题-编程题汇总_Java实现 注:有的题参考别人的思路,用我最容易理解的代码编的程序,所以可以不能最优的解法,后续我会进行更新,只是一个思路,我的笔记而已,所以不喜勿喷~~~ ...

  2. 滴滴出行2017秋招编程题

    声明:题目来自牛客网,如果侵权,请联系我,我将删除 连续最大和 一个数组有 N个元素,求连续子数组的最大和.例如:[-1,2,1],和最大的连续子数组为[2,1],其和为 3 输入描述: 输入为两行. ...

  3. 数据、运营相关试题(二)【牛客网:京东2019春招产品运营类试卷】

    试题来源:牛客网 试题答案仅供参考.其中前半部分偏向产品运营类试题,后半部分偏向综合测试类试题. 数据.运营相关内容,一起好好学习,天天向上吧! 数据.运营相关案例问答题(一)[牛客网:数据分析试题广 ...

  4. 数据、运营相关试题(一)【牛客网:京东2019春招商务与运营类试卷】

    试题来源:牛客网 试题答案仅供参考.其中前半部分偏向商务类试题,后半部分偏向运营类试题. 数据.运营相关内容,一起好好学习,天天向上吧! 数据.运营相关案例问答题(一)[牛客网:数据分析试题广场] 数 ...

  5. B站哔哩哔哩21届秋招算法岗笔试 假设货币系统包含面值1元、4元、16元、64元共计4种硬币,以及面值1024元的纸币。现在小明使用1024元的纸币购买了一件价值为N(0<N<=1024)的商品

    哔哩哔哩21届秋招算法岗笔试 题目描述: 假设货币系统包含面值1元.4元.16元.64元共计4种硬币,以及面值1024元的纸币.现在小明使用1024元的纸币购买了一件价值为N(0<N<=1 ...

  6. 【牛客网】网易2017内推笔试编程题合集(二)

    1.[*][编程题] 混合颜料 你就是一个画家!你现在想绘制一幅画,但是你现在没有足够颜色的颜料.为了让问题简单,我们用正整数表示不同颜色的颜料.你知道这幅画需要的n种颜色的颜料,你现在可以去商店购买 ...

  7. 2017秋招-技术岗-恒生电子

    时间:2017年10月21日~2017年10月24日 地点:清华附近的红杉酒店 过程 (1)在线测验 时间:2017年10月21日 题目涵盖:基础.技术.编程.智力.算法 题目难度:一般 (2)线程面 ...

  8. JS第二次授课及字节跳动2017秋招前端工程师笔试试卷涉及知识点

    JS第二次授课 一.转义字符和字符串 1.在字符串中使用转义字符输入Unicode编码.语法:\u+四位编码. 2.在网页中使用Unicode编码:语法:&#编码:(注:这里的编码要使用十进制 ...

  9. 牛客网 剑指Offer,一些值得记住的小题(五)

    25.在一个长度为n的数组里的所有数字都在0到n-1的范围内. 数组中某些数字是重复的,但不知道有几个数字是重复的.也不知道每个数字重复几次.请找出数组中任意一个重复的数字. 例如,如果输入长度为7的 ...

  10. 2018年贝壳网校招(秋招)算法笔试编程题

    1.题目描述: 给定一个长度为N的序列A1到AN,求所有区间[L,R](1≤L≤R≤N)的极差之和,其中区间[L,R]的极差定义为AL到AR中的最大值与最小值之差. 思路:暴力求解,通过率36% 代码 ...

最新文章

  1. Maven依赖中的scope详解
  2. rabbitmq队列的exclusive,durability,auto-delete属性以及消息可靠传输设计
  3. java基础排序_Java排序算法-Java入门|Java基础课程
  4. webapi部署到IIS 404错误
  5. 高达82 fps的实时文本检测,华科AAAI2020提出可微分二值化模块
  6. python中使用%与.format格式化文本
  7. iOS开发 mac证书无法展开
  8. 提示学习 | Prompt-Tuning这么好用?
  9. win10专业版与家庭版有什么不一样
  10. linux多个文件打包命令行,Linux基础:对文件打包压缩
  11. 遭DeFi反噬,以太坊绝地反击 |链捕手
  12. IOS免签支持在线封装app分发源码 免签封装带绿标
  13. 手机python3.0编程软件-QPython3手机版下载
  14. php排行榜系统,cms排行_PHP CMS系统排行榜
  15. PlatoFarm进展不断,接连上线正式版以及推出超级原始人NFT
  16. 【Visual C++】游戏开发笔记之六——游戏画面绘图(三)透明特效的制作方法
  17. 日常报错:关于tomcat默认端口被占用的问题
  18. ArcGIS地质图矢量化技巧
  19. 教育知识与能力必背简答题!
  20. 技术点:手写axios

热门文章

  1. cefsharp 添加html,winform+cefSharp实现窗体加载浏览器
  2. Java设计登录界面
  3. imp命令导入指定表_转载:Oracle导出导入dmp文件(exp.imp命令行)
  4. 草图大师SketchUp2019下载与安装教程
  5. [Qualcomm][MSM8937] MSM89XX平台上加载modem固件失败
  6. ROS仿真环境安装与配置
  7. 【gazebo要素9】 SDF制作Model文件(2)
  8. 通过js打开浏览器独立的页面
  9. mouse without borders其他选择中英对照说明
  10. 我的世界java版forge怎么用_我的世界forge怎么安装