建議首選看(有些面試題根據筆試題而來):
2014 360校園招聘技術類筆試題
面試題
對於:
const char *p = "Hello World";
char p[] = "Hello World";
分別求長度和所佔用空間大小。提示:求長度都可以用strlen(p),求佔內存空間大小第一個不能用sizeof,第二個可以用sizeof。
另外,第二個:strlen(p) = 11, sizeof(p) = 12給定一個正整數n,將其分成m段,每段爲n1,n2,...,nm,求怎麼劃分使得n1*n2*...*nm最大。
給一個數組a和長度len,刪除其中的負數並保證數組中原數據相對次序不變。
函數原型:void removeNegative(int *a, size_t len);進程通信有哪幾種方式?選兩種你最熟悉的方式進行具體講解。
我選了共享內存來說,然後接着問兩個進程怎麼通過共享內存進行通信?(進程間可以共享棧嗎?)針對筆試題的擴展:求一個數組中的第k大的數。
針對筆試題的最後一道編程題,我寫的代碼有哪些缺陷?
提示:(1)注意健壯性,比如判斷數組a是否爲null,數組長度是否爲0和1;
(2)注意特殊情況和邊界情況,如果數組爲3, 3, 2, 1,那麼你的代碼求出的第二大的數爲3但正確答案爲2,怎麼修改使其正確。web測試需要測試哪些方面?舉例,比如上傳一個大文件Tomcat會崩潰啥的。
Java中的設計模式,寫個單例模式,解釋工廠模式的作用。
get和post的區別?知道重定向嗎?有哪些分類(提示說臨時重定向和永久重定向)。
堆、棧和全局區都存放些什麼內容?
下面這兩句有啥問題嗎?
public class A { int a = 2; int b = a + 3; }
提示:面試官說在Eclipse下有個提示,提示將a作爲靜態變量,因爲b引用了類中的a而非對象a(爲什麼我的Eclipse下沒警告提示???)
寫代碼:從源路徑中讀取一個文件,寫入到目標路徑文件中。
try{}…catch{}…finally{}機制
提示:在try中遇到運行時異常時(例如除0操作等)或調用System.exit(1)等導致I/O直接中斷,此時不會去運行finally裏的語句,異常分類struts2與struts1的區別,ssh的作用。
MapReduce的工作機制,裏面的排序算法用的是什麼(快速排序?)
寫過多少行代碼?怎麼算出來的?
怎麼比較自己所拿到的幾個offer(工作地點、工作環境、職位發展前景、待遇)。
知道回調函數嗎?舉個回調函數的使用場景。
new和malloc都是堆分配,malloc後返回一個地址例如爲p,如果p++後再free(p),是否會出問題?
提示:會,丟失了釋放的一些具體信息,如釋放內存大小等。