顺丰科技2022年秋招大数据挖掘与分析工程师笔试题
笔试时间:2022-9-7

1 不定项选择题

1、python中_thread 和threading的区别

解析:

  • _thread模块提供了基本的线程和锁支持;threading提供的是更高级的完全的线程管理。

  • threading它更先进,有完善的线程管理支持,此外,在thread模块的一些属性会和threading模块的这些属性冲突。

  • _thread模块有很少的同步原语,而threading却有很多。

  • _thread模块没有很好的控制,特别当你的进程退出时。

  • threading会允许默认,重要的子线程完成后再退出,它可以特别指定daemon类型的线程。

2、数据库一级封锁协议,修改前加什么锁?

答案:X锁

在运用X锁(排它锁,可以读写,不能加任和锁)和S锁(共享锁,可以读,只能加X锁)对数据对象加锁时,还需要约定一些规则 ,例如何时申请X锁或S锁、持锁时间、何时释放等。称这些规则为封锁协议(Locking Protocol)。对封锁方式规定不同的规则,就形成了各种不同的封锁协议。不同的封锁协议,在不同的程度上为并发操作的正确调度提供一定的保证。
  
(1)一级封锁协议
  
一级封锁协议是:事务T在修改数据R之前必须先对其加X锁,直到事务结束才释放。事务结束包括正常结束(COMMIT)和非正常结束(ROLLBACK)。
  
一级封锁协议可以防止丢失修改,并保证事务T是可恢复的。使用一级封锁协议可以解决丢失修改问题。
  
在一级封锁协议中,如果仅仅是读数据不对其进行修改,是不需要加锁的,它不能保证可重复读和不读“脏”数据。
  
(2)二级封锁协议
  
二级封锁协议是:一级封锁协议加上事务T在读取数据R之前必须先对其加S锁,读完后方可释放S锁。
  
二级封锁协议除防止了丢失修改,还可以进一步防止读“脏”数据。但在二级封锁协议中,由于读完数据后即可释放S锁,所以它不能保证可重复读。
  
(3)三级封锁协议
  
三级封锁协议是:一级封锁协议加上事务T在读取数据R之前必须先对其加S锁,直到事务结束才释放。
  
三级封锁协议除防止了丢失修改和不读“脏”数据外,还进一步防止了不可重复读。

3、图邻接表示法的空间复杂度是否与顶点和边有关?

答案:都有关

空间复杂度为O(n+e),用数组模拟的邻接表是O(n+e) 的,需要保存每个节点相邻的第一条边的编号O(n),以及这条边下一条边的编号O(e)。时间复杂度也为O(n+e)

若采用邻接矩阵存储,时间复杂度为O(n^2)

4、错误的是?

A、正态分布经过线性变换后仍为正态分布

B、泊松分布的随机变量是无记忆的,即前后无关

C、单次抛硬币属于二项分布

答案:C,单次抛硬币是伯努利分布,多次抛硬币是二项分布

5、X和Y的概率如下,求E(XY)

Y X X X X
0 1 2 3
1 0 3/8 3/8 0
3 1/8 0 0 1/8

答案:E(XY) =E(X)E(Y) = ∑i=03xiP(xi)×∑i=03yiP(yi)=32×32=94\sum_{i=0}^3x_iP(x_i) ×\sum_{i=0}^3y_iP(y_i) = \frac{3}{2}× \frac{3}{2} = \frac{9}{4}∑i=03​xi​P(xi​)×∑i=03​yi​P(yi​)=23​×23​=49​

6、考查SQL,有四个字段,利用的group by with cube,返回多少条数据?

答案:16

解析:CUBE运算符是在Select语句的group by子句中指定的,group by应指定维度列和关键字with cube,结果集将包括维度列中各值的所有可能组合

7、强连通图20个顶点,最多有多少条边?

答案:e= (n-1)n= 280

强连通图是有向图,两个顶点,最多有两条边。

8、128个元素个数,二分查找最大比较次数?

答案:7

最小比较次数为1

最大比较次数为log2(n) + 1 向下取整

9、sql 字段判断为空的代码?

答案: select * from table(表名) where 字段is null or trim(字段)=‘’

10、MLP 从输入层为5,有3个隐藏层,神经元最大连接数是多少?

答案:5×5×5 = 125

11、最小二乘直线拟合的情况使用什么偏移?

答案:垂直偏移

12、信号量为什么时,进程阻塞?

答案:若信号量为0,进程则会进入阻塞

13、不能用动态规划解决的问题是?

A、0-1背包问题

B、最短路径问题

C、资源分配问题

D、库存管理问题

答案:D

14、hive 中求表中样本数的累计值,用到的方法有

A、sum() over()

B、partition by

C 、忘了

解析:partition by用于给结果集分组,如果没有指定那么它把整个结果集作为一个分组

15、排序算法空间复杂度不是O(1)的是?

A、插入排序

B、桶排序

C、希尔排序

D、堆排序

答案:D

16、一间柴房30年发生3次火灾,猫平均每晚上叫2次,火灾时猫叫的概率为0.7,猫叫发生火灾的概率是多少?

答案: 0.00671233

解析:

A :猫叫

B:被盗

题目求:P(B|A)
P(A)=27P(B)=3365∗30P(A∣B)=0.7P(B∣A)=P(A∣B)P(B)P(A)=0.00671233P(A) = \frac{2}{7}\\ P(B) = \frac{3}{365*30}\\ P(A|B) = 0.7\\ P(B|A) =\frac{P(A|B)P(B)}{P(A)} = 0.00671233 P(A)=72​P(B)=365∗303​P(A∣B)=0.7P(B∣A)=P(A)P(A∣B)P(B)​=0.00671233

17、甲乙两人比射箭,射中的概率0.5,甲射了101,乙射了100,求甲射中比乙次数多的概率是?

解析:1/2

链接:https://www.nowcoder.com/questionTerminal/cb32d803d4314d9293f0310227a88d15
来源:牛客网

  1. 甲乙各100箭时,有三种情况,甲多,乙多,一样多,概率分别设t, t, (1-2t),至于t是多少不重要往下看。

  2. 如果第一步的结果是甲多,剩下一箭不影响结果,概率是t。

  3. 如果第一步的结果是一样多,现在就要看最后一箭,甲有1/2的概率赢,也就是(1-2t)/2。

  4. 前面两种情况相加,结果是1/2。

18、按流水的级别可以把流水线分为?

A、 处理机间流水线

B、部件功能级流水线

C、处理机级流水线

答案:A,B,C

19、TDD 依赖的原则是什么?

答案:依赖倒置原则(Dependence Inversion Principle,DIP)

解析:TDD(Test-Driven Development,测试驱动开发)开发模式就是依赖倒置原则的最高级应用。

20、二叉树,度为1的有17个,度为2的有13个,度为0的有?

答案:14个

解析:n0 = n2+1

21、http状态码 。什么码表示访问成功,什么码表示错误?

答案:2** 和4**

1** 信息,服务器收到请求,需要请求者继续执行操作
2** 成功,操作被成功接收并处理
3** 重定向,需要进一步的操作以完成请求
4** 客户端错误,请求包含语法错误或无法完成请求
5** 服务器错误,服务器在处理请求的过程中发生了错误

22、由进程调度引起的状态切换是?

答案:就绪状态->执行状态

解析:进程的三种基本状态包括:就绪状态,执行状态,阻塞状态

处于就绪状态的进程,当进程调度程序按一种选定的策略选中一个就绪状态的进程,为它分配处理机后进程便可执行,状态转为执行状态。 【就绪状态——(进程调度)——执行状态】。

23、队列在队尾的操作的有什么?

答案:只有插入,没有删除,删除在队首

24、IP地址为192.168.78.66,子网掩码为255.255.240.0,则目的地址为?

25、硬币面值为1,5,11,要凑出15,贪心算法求解时,需要的硬币数为?

答案:3

1个11,4个1,共5个

3个5,共3个

2个5,5个1,共7个

解析:参考:https://juejin.cn/post/7073268824019533831

26、没有触发器的操作是?

A、更新Update

B、插入INsert

C、删除Delete

D、查询Select

答案:D

27、2020年有2072亿元收入,同比增长3.45%,增速较上年放缓2.8个百分点。则2019年收入是多少亿元?

答案:2072/(1+3.45%) = 1540.52

28、正规式(1|4|6)(104)(a|b)表达的元素是,正规的是?

A、4104a

答案:从1、4、6中选一个元素,104不变,从a和b中选一个

29、J2EE 的四层模型

运行在客户端机器上的客户层组件

运行在J2EE服务器上的Web层组件

运行在J2EE服务器上的业务逻辑层组件

运行在EIS服务器上的企业信息系统层软件

2 编程题

(1)题目

是求以下递归的函数调用次数
func(n)={1n<=3f(n−1)+f(n−2)+f(n−3)n>3func(n) =\left\{ \begin{aligned} 1 & & n<=3 \\ f(n-1)+f(n-2)+f(n-3) & & n>3 \\ \end{aligned} \right. func(n)={1f(n−1)+f(n−2)+f(n−3)​​n<=3n>3​
输出一行,包含一个整数,表示在求func( n )过程中,func函数被调用的总次数。不必考虑计算过程中产生的数字溢出等问题。由于答案可能很大,故输出答案对1000000007取模所得值即可。

(2)思路
动态规划,来做,有这种重复计算,涉及备忘录,那就考虑dp。
状态:递归次数
装填转移:
dp[i]=dp[i−1]+dp[i−2]+dp[i−3]+1,i>3dp[i] = dp[i-1]+dp[i-2]+dp[i-3]+1 ,i>3dp[i]=dp[i−1]+dp[i−2]+dp[i−3]+1,i>3
python 实现

def func(n):dp = [0]*ndp[0] = 1dp[1] = 1dp[2] = 1for i in range(3,n):dp[i] =dp[i-1]+dp[i-2]+dp[i-3]+1return dp[n-1]n = 2000
count = func(n)
print(count%(1e9+7))

【数据挖掘】顺丰科技2022年秋招大数据挖掘与分析工程师笔试题相关推荐

  1. 商汤科技20年秋招智慧城市-数据运营工程师笔试题(2019.8.19)

    套题 商汤20年秋招智慧城市-数据运营工程师笔试题 题型 选择 * 20 + 问答 * 3 完成时间 60分钟 ❤️ 「更多数据分析真题」 <数据分析真题日刷 | 目录索引> ❤️ 「更多 ...

  2. 2023 数字IC设计秋招复盘——数十家公司笔试题、面试实录

    最新更新日期:2023.04.02 1 目录/更新记录 1.1 笔试复盘篇 按笔试的时间顺序进行更新.备注:笔试时间可能会与实际时间有偏差. 序号 公司 岗位 链接 笔试时间 发布时间 0 禾赛 FP ...

  3. 顺丰科技2017年秋招笔试题“木木的密码”

    原公式是Ai = Bi - B(i+1)+B(i+2)-- 可以反向思维想, 当i= n时,就是i最大时,An = Bn 即 Bn = An; 当i = n - 1时, A(n-1) = B(n-1) ...

  4. 顺丰科技2019秋招产品经理(GIS)笔试题选择题部分

    1.智慧城市是运用信息和通信技术整合城市运行各项关键信息,从而对包括民生.环保.公共安全.城市服务.工商业活动在内的各种需求做出智能响应,实现城市智慧式管理和运行. 根据上述定义,下列不属于智慧城市内 ...

  5. 2022 届秋招已开放网申汇总(已收录 30+ 公司,持续更新中)

    有的同学还在努力找实习,全然不知秋招已经来啦! 像字节.腾讯.网易.阿里等大厂已经开启了提前批招聘,现在正是备战冲刺的好时机,如果等到秋招正式开始再准备,就真的晚喽. 为此我们整理了一份秋招网申汇总表 ...

  6. 2022年秋招总结暨acm退役记

    2022年秋招总结暨acm退役记   时间过得很快,转眼到了毕业的年份,因为我比较念旧,所以就从头开始回忆吧.我是某一线城市211软件工程专业本科生,高考时候也是放弃了某计算机评分为A-的985高校选 ...

  7. 【内推】阿里云 云原生团队 2022 届秋招

    同学,你好!我们是"阿里云云原生中间件"团队,目前正式进⾏ 2022届秋招的意向沟通,有任何问题欢迎加微信咨询 [zhang943__], 加微信备注下 "姓名+学校+期 ...

  8. 2022前端秋招面试题总结 阿里 腾讯 字节 百度 网易 京东 小红书 快手面试记录

    2022前端秋招面试题总结 阿里 腾讯 字节 百度 网易 京东 小红书 快手面试记录 等了百度三个月,终于发offer了,白菜价,92大佬们拒的薪资,我知足了. 排序挂了狠多,快手,蚂蚁,- 很绝望 ...

  9. 【2022小米秋招(2023校招)】软件开发方向 笔试题1——链表反转

    题目: 给你单链表的头指针 head 和两个整数 left 和 right ,其中 left <= right .请你反转从位置 left 到位置 right 的链表节点,返回反转后的链表. 输 ...

最新文章

  1. 【算法漫画】什么是红黑树?(下篇)
  2. Python中的支持向量机SVM的使用(有实例项目给的地址)
  3. Weinre mobile debugging on Windows
  4. linux驱动:自动创建设备节点
  5. 如何获取UIWebView中全屏播放视频事件
  6. rabbitmq 不同的消费者消费同一个队列_RabbitMQ 消费端限流、TTL、死信队列
  7. 微信小程序 自定义组件(stepper)
  8. openeuler学习指南
  9. 21世纪IT人才需要具有的5个鲜明特点
  10. jenkins, docker-composer
  11. Linux中创建LVM详细步骤
  12. bootstrap 获取表格修改的结果_bootstrap table getData获取表格数据的方法
  13. PHP100的php教程批量打包下载
  14. NIOS 2 软核中EPCS配置芯片的存储操作
  15. 聚焦化工安全:化工厂人员定位
  16. 在线 xml转java对象_XML转Java实体对象
  17. MySQL主从复制bug记录
  18. 《编程之美》学习笔记
  19. 求平方根问题 (C++ 实现)
  20. SpringBoot+Vue项目准妈妈孕期交流平台

热门文章

  1. Android BitmapShader实现圆角、圆形ImageView
  2. 超越自我,大神X7未来璀璨
  3. 第一章-计算机系统慢游
  4. 曲速未来 :网络犯罪分子于广告上哥斯拉加载程序的恶意软件
  5. python打砖块游戏程序设计报告_实现打砖块小游戏.py
  6. [软件更新]迅雷(Thunder)5.9.2.927特别版(6月17日修正)
  7. 图像颜色空间转换—— Python 实现
  8. DGCF,Disentangled Graph Collaborative Filtering论文理解
  9. 细说Python设计模式之模板方法模式(封装算法)
  10. 1、读入 cgss2003.dta 数据,查看 codebook,找到本人出生年份、文化程度变量;