第一次視頻面試有點緊張,第一題,一上來還沒自我介紹,就來個數據庫,
然而sql我都忘完了,當時還緊張,腦子一片空白,第一題直接gg
在加上我看到CourseId有個是空的直接矇蔽
當時腦子裏沒有一點order by,max() 的概念,一篇漿糊
這是我在面試完在下面又寫的,不知道對不對
select studentName from a where courseName = '數學' order by grade desc limit 1 (注意limit只在mysql裏有)
SELECT studentName FROM a WHERE coursenName="數學" and grade = (SELECT MAX(grade) FROM a WHERE coursenName="數學")
public class Main {
public static void main(String[] args){
try {
throw new B();
}catch(A a){
System.out.println("A");
}catch(Exception e){
System.out.println("Exception");
}
}
}
當時說兩個都會輸出不知道當時咋想的...
只會輸出第一條
可能有第一次視頻面試的原因吧,也有就是最近期末複習,沒看java的原因
不過可能最大的原因是太不注重基礎細節
這題到沒啥問題,鬆了口氣。。。
算法題,又沒做出來。。。
下來自己靜下心來敲敲,也寫出來了。。。 當時沒做出來,說什麼都是白搭
public class Main {
public static int[] merge(int []a,int []b){
int result []= new int[a.length+b.length];
int i=0;
int j=0;
int k=0;
while(i<a.length && j<b.length){
if(i<a.length && a[i]<b[j]){
result[k]=a[i];
k++;
i++;
}
else if (j<b.length && a[i]>b[j]) {
result[k] = b[j];
k++;
j++;
}
}
while (i<a.length){
result[k] = b[i];
k++;
i++;
}
while (j<b.length){
result[k] = b[j];
k++;
j++;
}
return result;
}
public static void main(String []args){
int a[]={1,3,5,7};
int b[]={2,4,6,8};
int c[] = merge(a,b);
for(int i=0;i<c.length;i++){
System.out.print(c[i]+" ");
}
}
}
然後面試官又問了一些問題
用過哪些數據結構
說下HashMap
說一下GC
說下spring boot
說下ioc ioc底層如何實現的? 反射
spring用的是依賴注入,還是依賴查找
說一下aop aop底層如何實現? 動態代理
事務的acid 原子,一致,隔離,持久
說下svn的命令 不會 (只是使用過,可以再學習下)
說下linux如果要在一個積累幾年的日誌裏,快速篩選出異常信息? grep "exception" log.txt
怎麼查看CPU內存使用率
說下平時用的命令
說下項目
總結:
注重數據庫(寫sql語句),注重算法(寫算法)
基礎不牢,地動山搖
多複習