数据开发秋招实习面经,发出来攒攒人品,求一个大厂sp

实习

字节

字节一面

java gc收集器有什么,都用了什么gc算法

  • 串行垃圾回收器(Serial Garbage Collector)

串行收集器是最古老,最稳定以及效率高的收集器,可能会产生较长的停顿,只使用一个线程去回收。新生代、老年代使用串行回收;新生代复制算法,老年代标记-压缩;垃圾收集的过程中会Stop The World(服务暂停)

  • Parallel Old 收集器

Serial 收集器的老年代版本,它同样是一个单线程收集器。它主要有两大用途:一种用途是在 JDK1.5 以及以前的版本中与 Parallel Scavenge 收集器搭配使用,另一种用途是作为 CMS 收集器的后备方案。

  • ParNew

ParNew收集器其实就是Serial收集器的多线程版本。新生代并行,老年代串行,新生代复制算法、老年代标记-压缩

  • Parallel Scavenge

Parallel Scavenge 收集器关注点是吞吐量(高效率的利用 CPU)。CMS 等垃圾收集器的关注点更多的是用户线程的停顿时间(提高用户体验)。所谓吞吐量就是 CPU 中用于运行用户代码的时间与 CPU 总消耗时间的比值。

新生代采用复制算法,老年代采用标记-整理算法。

  • Parallel Old收集器

Parallel Old是Parallel Scavenge收集器的老年代版本,使用多线程和标记-整理算法。这个收集器是在JDK 1.6中才开始提供

  • 并发标记扫描垃圾回收器(CMS Garbage Collector)

CMS 收集器是基于标记—清除算法实现的

  • G1垃圾回收器(G1 Garbage Collector)

使用多线程和标记-整理算法

并发线程池是什么

gc log日志

2014-07-18T16:02:17.606+0800(当前时间戳): 611.633(时间戳): [GC(表示Young GC) 611.633: [DefNew(单线程Serial年轻代GC): 843458K(年轻代垃圾回收前的大小)->2K(年轻代回收后的大小)(948864K(年轻代总大小)), 0.0059180 secs(本次回收的时间)] 2186589K(整个堆回收前的大小)->1343132K(整个堆回收后的大小)(3057292K(堆总大小)), 0.0059490 secs(回收时间)] [Times: user=0.00(用户耗时) sys=0.00(系统耗时), real=0.00 secs(实际耗时)]

user时间为什么比real时间长

一般的GC事件中,real time是小于sys+user time的,因为一般是多个线程并发的去做GC,所以real time是要小于sys+user time的。比如说:user+sys是2秒,如果是有5个GC线程并发的做垃圾回收,那么real time差不多是2000/5=400ms左右。

如果user时间比real时间短,可能有以下问题:

1.IO负载繁重
当服务器的IO负载非常重的时候(网络、磁盘访问、用户交互),real time就会变大。应用做GC日志打印的时候,也需要访问磁盘。当磁盘的负载非常重的时候,GC事件就有可能被阻塞,这会导致real time变长。

2.CPU不够用

如果服务器上跑了很多进程,你的应用很不幸没有得到足够的CPU时间,它就需要很多的等待。当你的进程在等待的时候,real time显然就比sys+user时间长了。

java类加载机制

加载 -- 校验 ---- 准备 ---- 解析 --- 初始化(真正执行java方法) ---- 使用 -- 卸载

maven怎么排除依赖冲突

maven常见指令,package和install有什么区别

1.mvn clean 清空产生的项目( target里)

2.mvn compile 编译源代码

3.mvn install 在本地repository中安装jar(包含mvn compile,mvn package,然后上传到本地仓库)

4.mvn deploy 上传到***(包含mvn install,然后,上传到***)

5.mvn package 打包

6.mvn test 运行测试

7.mvn site 产生site

8.mvn test-compile 编译测试代码

9.mvn -Dtest package 只打包不测试

10.mvn jar:jar 只打jar包

11.mvn test -skipping compile -skipping test-compile 只测试而不编译,也不测试编译

12.mvn deploy

13.mvn source.jar 源码打包

cookies作用

session作用

tcp/udp应用场景

tcp:要求数据可靠的场景,邮件、文件传输

udp:追求低时延,直播视频

tcp/udp有什么不同

UDP 在传送数据之前不需要先建立连接,远地主机在收到 UDP 报文后,不需要给出任何确认。虽然 UDP 不提供可靠交付,但在某些情况下 UDP 确是一种最有效的工作方式(一般用于即时通信),比如: QQ 语音、 QQ 视频 、直播等等

TCP 提供面向连接的服务。在传送数据之前必须先建立连接,数据传送结束后要释放连接。 TCP 不提供广播或多播服务。由于 TCP 要提供可靠的,面向连接的传输服务(TCP的可靠体现在TCP在传递数据之前,会有三次握手来建立连接,而且在数据传递时,有确认、窗口、重传、拥塞控制机制,在数据传完后,还会断开连接用来节约系统资源),这一难以避免增加了许多开销,如确认,流量控制,计时器以及连接管理等。这不仅使协议数据单元的首部增大很多,还要占用许多处理机资源。TCP 一般用于文件传输、发送和接收邮件、远程登录等场景。

三次握手是什么,为什么需要三次握手

跑spark的过程中当某个节点压力过大,怎么调优

spark参数调优

https://www.cnblogs.com/arachis/p/spark_parameters.html

syschronized和volatile有什么区别

volatile关键字解决的是内存可见性的问题,会使得所有对volatile变量的读写都会直接刷到主存,即保证了变量的可见性。这样就能满足一些对变量可见性有要求而对读取顺序没有要求的需求。

synchronized关键字解决的是执行控制的问题,它会阻止其它线程获取当前对象的监控锁,这样就使得当前对象中被synchronized关键字保护的代码块无法被其它线程访问,也就无法并发执行。更重要的是,synchronized还会创建一个内存屏障,内存屏障指令保证了所有CPU操作结果都会直接刷到主存中,从而保证了操作的内存可见性,同时也使得先获得这个锁的线程的所有操作,都happens-before于随后获得这个锁的线程的操作

flink+kafka怎么保证精准一次性消费

两阶段提交+checkpoint+barriy+offset回拨

二叉树的层序遍历

字节二面

threadlocal了解吗,说说threadlocalMap

ThreadLocal也叫做线程本地变量,ThreadLoacl为变量在每个线程中的都创建了副本,每个线程可以访问自己内部的副本变量,线程之间互不影响

每个Thread线程内部都有一个Map,Map里面储存线程本地对象key和线程的变量副本value,Thread内部的Map是由ThreadLocal维护的,由ThreadLocal负责向Map获取和设置线程的变量值;这样对于不同的线程,每次获取副本值时,别的线程并不能获取到当前线程的副本值,这样就形成了副本隔离,互不干扰

object方法

1.clone方法

保护方法,实现对象的浅复制,只有实现了Cloneable接口才可以调用该方法,否则抛出CloneNotSupportedException异常。

2.getClass方法

final方法,获得运行时类型。

3.toString方法

该方法用得比较多,一般子类都有覆盖。

4.finalize方法

该方法用于释放资源。因为无法确定该方法什么时候被调用,很少使用。

5.equals方法

该方法是非常重要的一个方法。一般equals和==是不一样的,但是在Object中两者是一样的。子类一般都要重写这个方法。

6.hashCode方法

该方法用于哈希查找,重写了equals方法一般都要重写hashCode方法。这个方法在一些具有哈希功能的Collection中用到。一般必须满足obj1.equals(obj2)==true。可以推出obj1.hash- Code()==obj2.hashCode(),但是hashCode相等不一定就满足equals。不过为了提高效率,应该尽量使上面两个条件接近等价。

7.wait方法

wait方法就是使当前线程等待该对象的锁,当前线程必须是该对象的拥有者,也就是具有该对象的锁。wait()方法一直等待,直到获得锁或者被中断。wait(long timeout)设定一个超时间隔,如果在规定时间内没有获得锁就返回。

调用该方法后当前线程进入睡眠状态,直到以下事件发生。

(1)其他线程调用了该对象的notify方法。

(2)其他线程调用了该对象的notifyAll方法。

(3)其他线程调用了interrupt中断该线程。

(4)时间间隔到了。

此时该线程就可以被调度了,如果是被中断的话就抛出一个InterruptedException异常。

8.notify方法

该方法唤醒在该对象上等待的某个线程。

9.notifyAll方法

该方法唤醒在该对象上等待的所有线程。

hashcode和equals方法的关系,equals相等,hashcode一定相等吗,反过来呢

  1. equals相等,Hashcode不一定相等

  2. 1 若是equals方法未重写,比较的是堆中地址相等 ,则是同一个对象,hashcode不管重不重写都相等

  3. 2 若是equals方法重写,比较的是对象的成员变量值,equals相等有可能是堆中new了一个对象,地址不同
    所以hashcode若是没有重写,则根据地址算法不相等,
    若是hashcode方法也重写了,则根据成员变量的hashcode值是相等的。

  4. hashcode相等,equals不一定相等
    2.1若是Hashcode方法未重写,代表是一个地址,那么就是同一个对象,equals 不管重写不重写都相等
    2.2若是hashcode方法已经重写,则代表的是成员变量的hashcode值,相等,则成员变量相同,
    若是equals方法重写了,比较的也是成员变量值则相等,
    若是equals方法未重写,比较的是堆中地址, 则可能是new了一个新的对象,equals不相等

sleep和wait

sleep不释放锁,wait释放锁

多个线程同步执行,让其中一些线程先执行,等他们执行结束,自己再执行

join

mysql聚簇索引和非聚簇索引

https://zhuanlan.zhihu.com/p/115778804

https://blog.csdn.net/alexdamiao/article/details/51934917

https://cloud.tencent.com/developer/article/1541265

聚簇索引:将数据存储与索引放到了一块,找到索引也就找到了数据

非聚簇索引:将数据存储和索引分开结构,索引结构的叶子节点指向了数据的对应行,myisam通过key_buffer把索引先缓存到内存中,当需要访问数据时(通过索引访问数据),在内存中直接搜索索引,然后通过索引找到磁盘相应数据,这也就是为什么索引不在key buffer命中时,速度慢的原因

mysql写过的最大一张表的数据量

spark提交yarn

client和clusater模式有什么区别

driver端运行的位置不同

提交yarn的流程

cluster模式有什么好处

driver在其他节点运行

有一个java程序,上线以后cpu负载重,怎么定位问题

模拟CPU占满还是比较简单,直接写一个死循环计算消耗CPU即可。

     /**
     * 模拟CPU占满
     */
    @GetMapping("/cpu/loop")
    public void testCPULoop() throws InterruptedException {
        System.out.println("请求cpu死循环");
        Thread.currentThread().setName("loop-thread-cpu");
        int num = 0;
        while (true) {
            num++;
            if (num == Integer.MAX_VALUE) {
                System.out.println("reset");
            }
            num = 0;
        }

    }

请求接口地址测试curl localhost:8080/cpu/loop,发现CPU立***升到100%

通过执行top -Hp 32805 查看Java线程情况

执行 printf '%x' 32826 获取16进制的线程id,用于dump信息查询,结果为 803a。最后我们执行jstack 32805 |grep -A 20 803a来查看下详细的dump信息。

这里dump信息直接定位出了问题方法以及代码行,这就定位出了CPU占满的问题。

spark任务出问题,怎么定位

自己定义一个类似jdk的string类,怎么在程序里面引用

修改类加载器

类加载器都有什么

启动类加载器 扩展类加载器 第三方

线程加载器有了解吗

spark和flink区别

批处理和实时处理

flink为什么能做到准实时处理

二叉树遍历和还原

字节三面

spark为什么比mr快

spark的中间计算结果都不落盘吗

为什么要划分stage

在项目中遇到的你认为最难的问题,你是怎么解决的

单词搜索(给一个list的字符串集合,快速判断,前缀树实现),一个字符串的单词搜索,时间复杂度是多少

字节一面 --- 数据仓库

java执行的过程

jvm存在的意义

8大基本类型

char

byte

boolean

int long short

double float

char

string list set map数据结构 和基本类型有什么区别

arraylist 和linkedlist 区别,为什么arrylist查询快

线程 & 进程的区别

怎么实现多线程顺序输出下面这,ABC是三个不同的线程

A print("a")

B print("b")

C print("c")

A - > B -> C

8:组件(常驻线程 add(1)) 10s

三个节点,同时对一个数据库中的一条记录执行add(1)操作,怎么保证同一时间只有一个执行成功

大数据知识

1:存储 hdfs hadoop

hdfs全称和普通的文件系统有什么不一样,你的意思是它可以无限扩展,为什么不行,后来hdfs怎么做的改进

文件系统

2:hdfs

​ namenode a//

​ / \

namenode1 namenode2 namenode3 namenode4

datanode dataname

a // a_1 // d_1

1 a // a_1 //

2 a // a_1 //

3 a // a_1 //

4 a // a_1 //

3:spark 的join

4:算法题

1:给你一个数字,1234,希望返回一个数字

a. 返回的数字由我给你的数字所组成

b. 返回的数字要比我给你要大

c. 返回的数字要正好比我给你的数字大一位

返回比输入数值大的数值的最小的一个结果。

对工作有什么预期

a. 实时数据的处理

b. 调优级别

2:5月底6月初 实习转正

3:北京

字节二面

mr和普通程序有啥区别

hbase为什么查询快

zk的选举说一下

你觉得zk比较重要的功能

spark的shuffle(重点)

spark本地化

字节三面

自我介绍一下

说说什么是大数据

大数据和以前有什么不一样

用什么写spark的,用过sql吗,给一道题写一下

一个sql

题目:假设有一个用户充值日志表A,字段如下:

字段 类型 含义
dist_id int 区组id
account string 账号
money int 充值金额
create_time string 订单时间

求解:统计某天区组下充值额最大的账号以及金额

SELECT * FROM (SELECT dist_id dist_id,account account,money money,ROW_NUMBER() over(PARTITION BY dist_id ORDER BY money DESC) row_num FROM test) t1 WHERE t1.row_num=1

能实习多久,最好能保证4个月

腾讯

自我介绍

怎么用的spark

hadoop了解吗

说说hadoop的流

hbase的region切分

sql 查找一张表中的重复字段

一行shell输出一个文件的第七行第四列

判断父子域名

美团

一面 --- 30min

自我介绍

java final

线程安全的单例模式

写一个sql

java集合

set和list区别

快排的时间复杂度和空间复杂度

智力题 3L和5L的桶,收集4L的水

秋招

陌陌 意向

一面

sql 每个班每科成绩top10(怎么优化/不使用窗函数怎么做)

yarn的调度器

mr执行流程(yarn)

获取某个目录下所有路径的数字

实习内容

hive三级分区怎么解决小文件问题

数仓建模了解吗

springboot的配置文件有哪些,优先级是什么

parquet文件优势

二面

自我介绍

hive建模说了解吗(建议看一下阿里巴巴大数据实践之路)

一个伪代码题目,用mr/spark/hivesql进行解答(类似最常出现的商品对)

如何进行etl链路优化

如果链路慢,但是没有sla风险,怎么优化(类似上一道题)

死锁是什么

如何破坏死锁

怎么数据链运行慢定位问题,对任务进行优化

怎么处理小文件

怎么确定是数据倾斜(哪项参数查看),怎么解决

reduce阶段都发生了什么,有没有进行分组

平时喜欢看什么书,谷歌的三篇论文看了吗

在读取数据库数据的时候,由于数量大,花费时间长,中间有人更改了某一项,读取的数据是更改前还是更改后

mvcc知道吗

数据库视图

数据库的三大范式,都有哪些区别,举例说明

数据库的第三范式为什么要这么设计,列式存储进行数据冗余,违反了第三范式,存在什么问题

流式计算存在的问题,流批一体的问题

字节流式数据目前的技术

未来的职业规划,在字节能得到你要的成长吗

反问:小文件合并的解决方案,流批一体的前景

hr面

四面

自我介绍

说一下你的实习经历,有哪些事情印象深刻

挑一个你认为最有挑战或者收获最大的项目介绍一下

怎么解决小文件问题

一道题:有一份用户gps轨迹的数据和全国100万个经纬度及其对应城市的名单,怎么快速找到这些城市在这些用户中的pv和uv

设计一个长链接转短链接系统

hbase为什么读快

lsm特点

lsm为什么有合并这个操作

陌陌有一栋楼,修建电梯,怎么优化使得电梯修建最合理,怎么建模,优化目标是什么

百度

提前批一面

自我介绍

怎么处理小文件

迁移spark3有什么收益

m个苹果,放在n个盘子里。有多少放法

判断环形链表

怎么进行任务优化,有什么方法论

提前批二面

自我介绍

怎么调优

怎么合并小文件

有这样一个评分器,我希望他对元素1的评价比元素0的评价高,现在有一个很大的元素集合,每个元素有两个组成,第一个是评分器的打分,第二个是这个元素本来的评价(0、1),每次从中没有放回地取两个,这两个中元素1比元素0评分高,则认为评分器打分好,根据这个指标计算评分器地总体打分率

说说你的解决方案的时间复杂度

如果有k台机器,怎么降低复杂度,能降低多少

只能降低遍历的复杂度吗,可以降低排序的时间复杂度吗,能降低多少

你在项目里面怎么计算复工等级,有没有考虑企业停工的经济损失

网易有道 意向

一面

自我介绍

挑一个项目或者实习经历说一下

挑一个优化的点说一下

有没有构思过怎么设计一个自动化调优平台

介绍一下mr

介绍一下hdfs

股票买卖的最大值

二叉搜索树插入节点

介绍一下jvm的区域

ClassA a=new Class(1) 在jvm中怎么存储

反问

二面

自我介绍

在字节做什么

数据开发和数据平台开发偏向哪个,为什么

介绍一下数据仓库

sql题目,给一个班的数据成绩进行排名

有这样一个表,时间戳 用户id 用户行为,怎么计算出每天的新用户数量

如果个别天没有新用户,怎么补全这些日期

设计一个软件系统,说说你的思路

你在项目中怎么评价你的系统性能,有什么指标吗

三面

数字字符串转ip地址 https://www.nowcoder.com/questionTerminal/ce73540d47374dbe85b3125f57727e1e

介绍项目

美团(到家) 意向

技术终面

实习直通车

为啥拒了美团实习offer

说说在字节干了什么

你们组多少人,怎么分工,只是做离线吗

介绍一下数仓建模

基础数仓有多少表,对外提供多少指标

说一说日活表的产出逻辑,经过ods->DWD->DWM的过程

你们和业务方有什么区别,定位是什么

字节和美团怎么选

有什么问题想问

hr面

联想 oc

面试官自我介绍

自我介绍

说说你的项目

数据倾斜怎么解决

实习和你在实验室有什么区别吗,你学到了什么

你接触到的数据量有多大,怎么针对这些处理的

怎么预测一个人的收入

你觉得你最大的不足是什么,或者说你身边的人觉得你哪里还有不足

360(数据平台)

一面

自我介绍

说一下实习

有什么难点,怎么解决的

说一下项目里面的难点,怎么解决的

看过什么源码,介绍一下spark源码

k个一组翻转链表

int和integer有什么区别

final 值 方法 类有什么区别

java方法是值传递还是对象传递

二面

换了时间就没下文了,算放弃了?

京东(物流)OC

一面

自我介绍

怎么优化spark

怎么处理数据倾斜

java后端做过吗,web后端呢

springboot aop知道吗

说一下你对多线程的理解

threadlocal oom是为什么

java sout(0.1+0.2)输出什么,为什么

如果让你开发一个flink项目,你怎么从0开始开发,有什么计划

反问

二面

自我介绍

说一个你在笔试中影响最深刻的题目,或者是你觉得当时没做好的题目

java juc用过吗,简单介绍一下

java web呢

假如我在后端想要控制数据库同时查询的请求,比如最多允许5个接口同时查询,多余5个的接口会暂时挂起,怎么实现,如果是限制特定接口的同时查询次数呢,多个节点能做吗,如果当某个接口查询时间过长导致其他请求阻塞,怎么处理

怎么处理数据倾斜,项目中怎么做的

腾讯

一面(PCG)

自我介绍

说下spark提交流程

mr和spark的不同

为什么要迁移到spark3

项目中比较难的地方,怎么解决的

一张公众号表和公众号下文章对应表,一张用户对不同文章的操作(浏览 点赞 评论 打赏 转发),怎么求热度前一百的公众号

一道场景题目

了解深度学习和机器学习吗

二面(PCG)

自我介绍

说说项目中的亮点

扔鸡蛋

给定一个100层的阶梯,阶梯间的高度差是递增的(e.g. 第一层和第二层之间间隔1, 第二层和第三层间隔2, 以此类推)。
同时给定一种玻璃球,这种玻璃球在层级之间掉落时有一定的承受度,如果高度差大于其承受范围的话,玻璃球就会碎掉,
如果小于承受范围的话,就安全无事。现在我们的目标就是找到阶梯上的临界层k(其定义为k-1层->k层玻璃球是安全的,k层->k+1层玻璃球会碎)。
现在给出几个定义:

  1. 尝试(try):从任意一层m,往相邻一层m+1,做一次掉落实验,称为一次尝试。

  2. 策略(solution):具体的尝试步骤构成一个策略

  3. 策略的尝试次数上界(最坏情况下的尝试次数):给定任何一个策略,都会有一种k的情况(最坏情况),
    会使得需要用最多的尝试次数才能将临界层找到,这个最多的尝试次数称为该策略的尝试次数上界

  4. 策略之间的优劣:尝试次数上界越小越优

最终的问题:给定2个一模一样的玻璃球,在保证找到临界层的情况下,给出最优策略。

一面(腾讯云)

自我介绍

项目架构设计

为什么选用hbase,hbase读数据流程(越详细越好)

熟悉什么大数据组件

介绍mr、spark及两者的不同

spark为什么比mr快

项目中如何确认用mr还是spark,为什么

手写快排

二面(腾讯云)

自我介绍

说一下小文件问题的原因和解决方案

说一下spark shuffle

字节集群资源有多少,怎么分配的,你能使用多少,不同队列之间会影响吗

说一下你们的业务流程

反问

快手(海外数据研发中心)OC)

一面

自我介绍

问项目

怎么优化spark

怎么处理小文件

快速得到一张表的所有字段去重后值的数目

二面

自我介绍

挑一个项目介绍一下

怎么处理项目中遇到的问题,深挖项目

介绍一下你实习中做的哪些工作

怎么进行维度建模,怎么进行业务侧开发,有什么规范或者心得

维表太宽,怎么处理

三面

自我介绍

怎么优化数据链路,整体收益是多少,为什么这么优化

怎么处理数据倾斜,有什么方法

有无限大内存,有100亿的数字,找出top1w,怎么做,时间复杂度是多少

阿里 放弃

一面 阿里妈妈

自我介绍

怎么处理小文件,为什么这么处理,字节为什么选用这个方案,spark最后不是有merge吗,为什么不行,spark重分区算子,有什么区别

spark shuffle了解吗,说一下,知道shuffle service吗

说说mr和spark的不同

怎么处理数据倾斜

有一个表,第一列是节点,第二列是节点的父节点,一个节点有多个父节点,求指定节点的所有父节点(父节点的父节点也算),怎么做,时间复杂度是多少

反问

二面 阿里妈妈

自我介绍

说一下你的毕设

问项目

感觉聊的不错,但是挂了,应该是没hc了

#面经##腾讯##百度##美团##陌陌##字节跳动##大数据开发工程师#
全部评论
这应该是我见过最离谱的一个面经了,tql
2 回复 分享
发布于 2021-10-26 09:46
这也太强了,穆勒
1 回复 分享
发布于 2021-10-19 15:36
你们的项目都是哪来的呀?是大数据方面吗?还是java开发?
点赞 回复 分享
发布于 2021-10-18 23:45
大佬,你面试资料是在哪里找到的,可以分享我一份吗,想给明年秋招准备
点赞 回复 分享
发布于 2021-10-19 10:41
大佬好啊,请问有大数据java学习路线吗,有java基础,但是不熟练, 比较熟悉Python,但是怕面试问java的多,想进阶学习
点赞 回复 分享
发布于 2021-10-22 22:29
大佬是科班吗😯
点赞 回复 分享
发布于 2021-10-24 13:57
楼主陌陌开奖了吗
点赞 回复 分享
发布于 2021-10-28 21:16
这种带答案的面筋太良心了 楼主加油!
点赞 回复 分享
发布于 2021-11-12 23:01
楼主,可以说说平时实习都是干些什么吗?😮
点赞 回复 分享
发布于 2021-11-17 22:31
天 日常实习也需要这么多储备吗
点赞 回复 分享
发布于 2021-11-23 23:43
为啥大佬总是被问到小文件的问题,是自我介绍项目里面提到了吗,求大佬回答,感谢😂
点赞 回复 分享
发布于 2022-01-12 22:31
这是我的亲师兄啊,师兄我想问一下为什么面试会问到java后端Spring的知识呢,还有就是实习面试的时候要介绍项目吗?
点赞 回复 分享
发布于 2022-02-18 00:02
请问一下各位大佬,校招不会spark可以吗,感觉有点来不及学了😥
点赞 回复 分享
发布于 2022-03-09 10:39
请问联想是几面呀?
点赞 回复 分享
发布于 2022-04-06 11:16

相关推荐

评论
32
243
分享
牛客网
牛客企业服务