字节春招之旅(一)

这是字节跳动算法实习岗一面(简历面)的覆盘,之前就听说字节跳动的面试比较难,这次真的亲身体验了一把…

这次面试虽然是简历面,但包括了计算机基础知识、机器学习算法基础、简历项目以及编程题。

计算机基础知识
主要就c++/python编程语言问问题,不过前辈看出来我对语言这东西目前也就只是用,没过多研究其背后的原理,问了几个问题就过去了。

  1. python:深拷贝与浅拷贝的区别?如何实现深拷贝copy.deepcopy?dict是如何实现的? 很明显,后面两问都涉及到python源码的实现了,只不过dict我回答数据结构中哈希表的实现原理,前辈好像也觉得ok。不过还是等我研究下python的源码再把这两个问题好好回答一下。 可以通过leetcode138-复制带随机指针的链表来一窥深拷贝的源码实现。
    参考资料:
    Java的深拷贝和浅拷贝【虽然是java的,但讲的很好,可以将python中不可变类型看作是基本类型,可变类型看作是引用类型,python中实现浅拷贝的一般就=和copy.copy,实现深拷贝的是copy.deepcopy。】
    python深拷贝和浅拷贝的区别

  2. c++:#define与const定义常量的区别?
    #define和const的区别

机器学习算法基础

  1. svm的损失函数?
  2. 核函数的作用?常见的核函数有哪些?多项式核与高斯核的区别?核函数之间的区别应该是对输入空间数据的分布做的假设不同,但至于具体做了何种假设,各自的优势在哪,需要参考资料。另外推荐看下李航老师的《统计学习方法》中svm一章,有更具体的核函数举例。
    参考资料:
    svm常用核函数
    李航老师《统计学习方法》
    支持向量机原理(三)线性不可分支持向量机与核函数

简历上的项目
这一块比较熟,自我感觉表现还可以。

  1. CTR预测是干什么的?
  2. XGBoost与LightGBM的区别?
  3. FM与LR的区别?
  4. 为什么NFM线下效果很好,线上效果不佳?

编程题
单链表反转

结语
字节跳动的面试可以说考察面试者的知识面既广又深,很适合帮助面试者查缺补漏,而且可以同时投多个部门,我觉得很适合有一定面试基础且需要再巩固的童鞋去提升自己。这次面试有点尴尬地是在牛客网上写编程题,要自己编写输入!!!这碰上了链表与树的题,还得写个构造过程。。。

如果觉得不错,请素质三连哈~~
有疑问,欢迎评论、共同探讨-v-

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章