東方通2013校招應(yīng)聘總結(jié):
1.ArrayList和LinkedList的基本方法的算法復(fù)雜度是?
答:
ArrayList 是線性表
get() 直接讀取第幾個(gè)下標(biāo),復(fù)雜度 O(1)
add(E) 添加元素,直接在后面添加,復(fù)雜度O(1)
add(index, E) 添加元素,在第幾個(gè)元素后面插入,后面的元素需要向后移動(dòng),復(fù)雜度O(n)
remove()刪除元素,后面的元素需要逐個(gè)移動(dòng),復(fù)雜度O(n)
LinkedList 是鏈表的操作
get() 獲取第幾個(gè)元素,依次遍歷,復(fù)雜度O(n)
add(E) 添加到末尾,復(fù)雜度O(1)
add(index, E) 添加第幾個(gè)元素后,需要先查找到第幾個(gè)元素,直接指針指向操作,復(fù)雜度O(n)
remove()刪除元素,直接指針指向操作,復(fù)雜度O(1)
2.一個(gè)int型的值,在其他函數(shù)中被改變,但不返回,其值最終改變了嗎?
答:沒有改變,基本數(shù)據(jù)類型和String不會(huì)被改變。其他類型因?yàn)閭鬟f的是引用,所以會(huì)被改變。
3.讀下面程序,判斷輸出
try {
System.out.println(1);
int[] a = null;
a[0] = 1;
System.out.println(2);
} catch (RuntimeException e) {
System.out.println(3);
} catch (Exception e2){
System.out.println(4);
} finally{
System.out.println(5);
}
輸出為:
1
3
5
考察對(duì)異常類型的熟悉程度。
4.普通方法能否調(diào)用靜態(tài)變量?
答:可以。