作业帮 大数据面经

动动小手,点个赞呗

作业帮一面3.26

问了一些数据结构,计算机网络基础知识

Java问的比较多

集合里面的底层实现

Java Concurrenthashmap 1.7与1.8底层实现

还有其他的我给忘了

大数据技术spark FLink问的一些

机器学习随便选个分类器讲一下如何实现


三道手撕代码

第一道题目

二叉树节点间的最大距离问题

从二叉树的节点A出发,可以向上或者向下走,但沿途的节点只能经过一次,当到达节点B时,路径上的节点数叫作A到B的距离。

现在给出一棵二叉树,求整棵树上每对节点之间的最大距离。

输入描述

第一行输入两个整数n和root,n表示二叉树的总节点个数,root表示二叉树的根节点。

以下n行每行三个整数fa,lch,rch,表示fa的左儿子为lch,右儿子为rch。(如果lch为0则表示fa没有左儿子,rch同理)

最后一行为节点o1和o2。

输出描述

输出一个整数表示答案。


输入

7 1

1 2 3

2 4 5

4 0 0

5 0 0

3 6 7

6 0 0

7 0 0


输出

5


第二道题目

判断二叉树是否为平衡二叉树

平衡二叉树的性质为:要么是一棵空树,要么任何一个节点的左右子树高度差的绝对值不超过1。给定一棵二叉树,判断这棵二叉树是否为平衡二叉树。

一颗树的高度指的是树的根节点到所有节点的距离中的最大值。

输入描述

第一行输入两个整数n和root,n表示二叉树的总节点个数,root表示二叉树的根节点。

以下n行每行三个整数fa,lch,rch,表示fa的左儿子为lch,右儿子为rch。(如果lch为0则表示fa没有左儿子,rch同理)

输出描述

如果是平衡二叉树则输出"true",否则输出"false"。

输入

3 2

1 2 3

输出

True


第三题sql,使用spark来完成下列操作,我使用的是DF的API,用了窗口函数

年级,班级 姓名 分数

年级下的班级的前三名






作业帮二面3.31

首先自我介绍

重点讲了一下第一个Spark项目的流程与调优,问的很细

Java  DCL实现,volatile与sync的作用,JMM原理

CAS思想,半初始化对象,对象锁


代码题

大数据

本地单机4G内存,10T硬盘

A、B两个500G文本文件,每行一列url

http://www.baidu.com/fsfsdfss

1. AB并集 出现次数前10023的URL

2. AB交集


1,2,3,4

4,5,6

5,6,7

7,8,8,9


算法题目

问题:给定两个等长度的一维数组Y[N]和A[N],编程实现如下效果

其中Y中元素为正整数1-50,A中元素为实数-10000-10000,各自都可能出现重复的数值。

选取一组下标集合{0,1,2,...,N-1},可能不选取。使得子数组Y'的不同元素计数 乘以 数组A'元素之和 的值最大,输出最大值。

使得count(distinct Y[i]) * sum(A[i])最大,输出最大值


例如:

{1, 2}

{4, 7}

返回22,因为2* (4+7) = 22,明显两个数字都选取才会使得结果最大

{1, 1}

{-1, -1}

返回0,因为什么都不选取结果最大

{1, 2, 3}

{7, 4, -1}

返回30,都选

{1, 2, 3, 2, 3, 1, 3, 2, 3, 1, 1, 1}

{1, 7, -2, 3, -4, -1, 3, 1, 3, -5, -1, 0}

返回54

作业帮三面(HR面)4.9
正常聊天

#作业帮##实习##大数据开发工程师##面经#
全部评论
楼主什么岗啊 我也面完了
点赞 回复
分享
发布于 2020-03-31 18:32
大佬加油
点赞 回复
分享
发布于 2020-03-31 18:40
滴滴
校招火热招聘中
官网直投
蒋哥牛批,点个赞
点赞 回复
分享
发布于 2020-03-31 18:42
楼主什么时候收到的面试啊?
点赞 回复
分享
发布于 2020-04-01 13:36
实习面试吗?
点赞 回复
分享
发布于 2020-04-01 19:14
请问总共有几面呢?两面技术就够了吗
点赞 回复
分享
发布于 2020-04-02 16:00
3.26一面 3.31二面 4.9HR面
点赞 回复
分享
发布于 2020-04-07 15:52
我明天hr 不知道问什么
点赞 回复
分享
发布于 2020-04-07 22:26
4/08一面, 4/10二面,许愿一个hr面
点赞 回复
分享
发布于 2020-04-10 16:14
小心作业帮https://m.nowcoder.com/discuss/344690
点赞 回复
分享
发布于 2020-05-03 12:55

相关推荐

前两天面的,正好抽时间来理一下面经,上官网看的时候发现已经挂了第一部分:自我介绍第一部分:实习项目 20min主要就是问项目中做了哪些工作,一些细节问题,然后询问性能+场景的问题。因为实习是很久之前做的,一些细节其实记不清了,讲的时候思路不够清晰。问到的场景其实项目都没有考虑,感觉这些部分没有答好。第三部分:八股 15min八股我本来面完觉得自己答得不错的,基本上都能答上来,但是回看发现自己总是用一些“好像”“应该”的词汇,显得很不熟悉知识点,而且我在面前放了一个本子,一遍回答的时候就用笔顺手理思路,面试过程我自己是没有察觉到什么,现在回头看起来就是眼睛一直在乱瞟。    1. 在golang中channel一般用来做什么?    2. channel的数据结构是什么样的?    3. map进行并发读写会有怎样的问题?        1. 发生并发情况,进程会报什么样的错误?    4. waitGroup一般是用来做什么的?    5. 讲一下逃逸分析的概念?    6. golang里面的内存分配是怎么分配的?mspan、mcache的概念?(不知道)    7. golang的垃圾回收是怎么做的?(忘记了)    8. 讲一下线程调度的GMP模型    9. 讲一下Redis的ZSet的数据结构    10. 跳表的优势是什么?    11. Redis中主从切换、选组、哨兵的协议是什么?了解过RESP协议吗?(不知道)    12. MySql的事务是怎么实现的?    13. Redo log和Undo log的不同?    14. 在一台机器上的两个进程是如何实现资源之间的隔离?(不知道)    15. 进程的通信方式有哪些    16. 进程的调度算法第四部分:算法题:LCR 051. 二叉树中的最大路径和第五部分:反问继续加油!希望后面的面试能变得顺利!
点赞 评论 收藏
转发
12 38 评论
分享
牛客网
牛客企业服务