一共十二面,题目比较基础,20分主观题+40分不定项选择+20分SQL+20分手写编程
主观题
问奖学金,别人对自己的评价和自己的看法,自己最大的优缺点,期望工作地点以及对出差的看法
不定项选择:
- 第一部分是计算机基础知识的,有Linux,计组和计网的,很基础,但是不复习容易蒙。
比如问计网应用层有哪些协议,Linux支持远程连接的协议。因为是不定项选择,给了很多选项,有的选项没见过就很不确定。 - 第二部分是Java基础和C语言二选一,Java基本上是一些接口和jvm的基本概念,如果不清楚的话,可以选C语言。C语言全是指针,相当于人脑编译器了,不过不是很复杂,搞清楚指针和数组的概念就行。
例如*p++
,*(p++)
,*p + 2
,*(p+2)
这些区别要搞清楚
SQL
例子都是数据库教材里很常见的员工-部门-薪资表,都是查询,没有触发器之类的考察。但是要复习SQL的层次查询和Fetch查询,还要注意不要把SQL和MySQL搞混了。
印象深的第一题和最后一题,问什么什么第一高,第二高的。之前没复习SQL,一直靠写项目的MySQL记忆来写麻了…
编程
第一题种树:给定数组和一个数字,数组内1表示树,0表示空,插空种树最多种多少颗是否和给定的数字相同
样例输入:flowerbed[] = {1,0,0,0,1}, n = 1
输出:true
样例输入:flowerbed[] = {1,0,0,0,1}, n = 3
输出:false
第二题二分查找:给定一个升序数组和一个target,但是数组在某一处左右调换,问数组是否包含target,若包含,返回target下标,否则返回-1,要求时间复杂度O(log n)
样例输入:nums[] = {4,5,6,7,0,1,2}, target = 0
输出:4
样例输入:nums[] = {4,5,6,7,0,1,2}, target = 3
输出:-1