本帖最后由 phoebeho 于 2024-12-26 15:34 编辑
本人参加了2020年的HKU CS面试,已经上岸。现根据我的回忆,以及前辈的面经,总结出了一份CS面试真题宝典给大家。
数学部分
- 涉及微积分、概率论以及线性代数。
- 求极限
- xsinx求导
- x/(1+x)求不定积分 !! 求1/x+4e^2x的不定积分 。!! 定积分
- 条件概率
- 写出标准差的公式
- 简单考察 标准差的定义,如果原数据集全部乘以常数c,则新的标准差为?
- (1)两个骰子同时为4的概率(2)两个骰子至少有一个为5的概率(3)一副扑克牌打乱后,一张挨一张放好,将其分为两个花色,红色和黑色,问你怎么将其中相邻花色相同的牌找出来(4)问题3的进阶,无穷张扑克牌,怎么其中相邻四个花色相同的牌的位置找出来?!! 两个七面骰子,求它们和的所有可能个数(不考虑顺序) 条件概率公式,一个数组里拿两个数,已知一个数为2,求两个数的和大于6的概率。
- 求条件概率
- 求协方差
- H0 Hα写假设 !! (假设检验)
- 求定积分(奇偶函数的特性)
- 矩阵的逆 矩阵逆的定义,给一个矩阵让求逆
- 概率的加法公式
- 概率密度积分
- 抓小球的概率
- 四位数字的电话号码,问有多少个电话号码含有且仅含有3和7这两种数字的电话号码。
- 一道较难的数学证明题
编程部分
请注意,编程题全部需要在纸上进行手写!
- 给正整数N,分解成1和3的组合,比如N=4,分解为1111,13,31(递归)
- 给个正整数N,判断是否有7位并且第4位是0
- 一个是找出数组的最大和次大值
- N级台阶,每次可以上一步或两步,返回可能的所有方法的个数(递归)
- 无序数组,返回乘积最大的两个数
- 给定一个集合和一个数N,让集合的子集中的元素和为N
- bubble sort、归并排序
- 看似是编程题,其实是将if语句中的or and替换成数学里的交集并集求解。
- 统计一个数组里1-9分别出现的次数
面试部分
注意,面试部分全部是英文提问与回答!
- 先挨个讲一下你有特点的地方或者你cv上没有的东西 || speciality
- 你会什么语言,讲一下他的特点
- 我们项目中有什么些课程你感兴趣吗 - 我们项目中哪个课程最吸引你 - 问问某个科目讲了什么和基础内容
- 为什么来我们项目不去其他的呢?
- JVM里的heap是什么意思?
- 数据库3大范式说一下?
- 本科阶段最喜欢的课程 每个人介绍自己在大学阶段最满意的一门课
- 一分钟的自我介绍
- 英语能力测试,用3-8行写关于你的家庭
- 用英语描述一种排序算法
- 如何用IT技术解决北京交通拥堵问题
- 你觉得你有没有什么和项目相关的、别人没有的优点
- 制约数据科学发展的因素
- 记得最清楚的课程学了什么,详细地问,需要说出具体的topic和example,注意学术名词。
教材推荐
编程算法:就看图灵出版的「算法4」就足以应对大部分面试题。
概率论:Morris H DeGroot_、Mark J Schervish两位大神写的概率论书籍是我认为写的最好的教材,只要做好前几章习题就足以应对面试的概率论部分。
线性代数:同济大学出版的线性代数,同样看懂前几章,会手算即可。
高等数学:同济大学高等数学B上,弄懂微积分即可。
编程语言:推荐java,面试经常有java的问题。
|