面试是通过如流面的,不是用的牛客的链接,需要共享屏幕写代码。
面试官感觉挺年轻的,感觉也挺好说话,问的问题思路有点卡壳或答得有点问题都会友好提示一下。
首先是自我介绍,介绍完之后面试官表示对之前做的人脸换妆的项目比较感兴趣,可能也有一些深度学习和对抗生成网络的经验,聊项目聊到15分钟。
然后开始先问基础知识。
java先问了面向对象的特征和自己对这些特征的理解,然后问了==和equals的区别,然后给了一段代码判断 == 和equals的返回值。
public static void main(String[] args) { Integer integerA = new Integer(5); Integer integerB = new Integer(5); int intA = 10; int intB = 10; String strA = new String("test"); String strB = new String("test"); System.out.println(integerA == integerB); System.out.println(integerA.equals(integerB)); System.out.println(integerA.equals(intA)); System.out.println(intA == intB); System.out.println(strA == strB); }
然后开始问MySQL,先给了几个数据表的信息。
(1)学生表 Student(SId,Sname,Sage,Ssex) --SId 学生编号,Sname 学生姓名,Sage 出生年月,Ssex 学生性别 create table Student(SId varchar(10),Sname varchar(10),Sage datetime,Ssex varchar(10)); (2)课程表 Course(CId,Cname,TId) --CId 课程编号,Cname 课程名称,TId 教师编号 create table Course(CId varchar(10),Cname nvarchar(10),TId varchar(10)) (3)成绩表 SC(SId,CId,score) --SId 学生编号,CId 课程编号,score 分数 create table SC(SId varchar(10),CId varchar(10),score decimal(18,1))
然后需要写sql语句,大概就是查找某个id为xx的学生信息,查找姓xx的学生信息,查找某个id为xx的学生的所有课程平均分,查找选了所有课程的学生。
好久没写过sql了,写的时候还是有点生疏了,尤其是最后查找选了所有课程的学生信息时,不过面试官人挺好的,说思路没啥问题,语法回头自己再看一下去。
然后问Linux命令用过和知道哪些,我就说了一下知道的一些命令,比如 ps -ef | grep 'java',lsof -i:3306,ifconfig和基本的文件操作的命令,然后就没接着问了。
然后问操作系统,好像就问了线程和进程的区别,以及进程的状态。
然后就开始做题,总共三道题。
第一题是LeetCode的两数和:输入一个递增排序的数组和一个数字s,在数组中查找两个数,使得它们的和正好是s。如果有多对数字的和等于s,则输出任意一对即可。
第二题是判断链表是否有环;
第三题是给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和。好像也是LeetCode上的,不过印象里LeetCode上是给了俩链表。
三道题做完就是反问环节了。问对自己这次面试的建议,面试官和度小满一面一样,也是说校招对项目经验不是那么看重,主要还是基础知识(是百度校招都这样吗?)面试官也说了部门是做支付相关的,平时工作对数据库要求比较高(我说咋不问计网让我写sql...)问面试官建议的时候感觉面试官的意思是过了,但也没给出明确的话,只是说后续流程会有人联系。
晚上八点出头面完,然后九点半接到了约二面的电话。
全部评论
(3) 回帖