第一輪筆試 算法題:使用c# 1. 已知m和n是已經排序好的數組,從小到大,現在要合并這兩個數組內的數到一個數組,仍然要求是從小到大排序 2. 使用遞歸求n的階乘 3. 有1,2,2,3,4,5六個數,要求輸出他們組合的全排列,4不能在第三位,5和3不能相鄰 4. 請解釋HTTP,Cookie和Session 5. 請解釋視圖,存儲過程,左連接 6. 請簡單描述三層架構 7. 寫一段HTML頁面完成注冊功能
面試官問的面試題: 1. ASP.Net頁面生命周期
這個問題我本身比較熟悉,出門前還看過 :)。
說了幾個自己認為比較重要的PreInit、LoadViewState、 LoadPostData、Load、RaisePostDataChangedEvent(所有實現了IPostBackDataHandler接口的控件)、RaisePostBackEvent(實現 IPostBackEventHandler 接口的控件,如 Button, LinkButton等)、PreRender、SaveViewState。當然包括每個事件主要做什么,尤其是LoadViewState和SaveViewState是實現ASP.NET了保持狀態的假象(相信這個問題回答的超出對方想象)。
2. 母版頁的作用
這個問題比較簡單,簡單介紹并提及自己不喜歡用母版頁,用javascript找控件比較麻煩,對方頗有同感。
3. 簡單查詢,考勤表id(PK int) name(varchar) time(datetime),求遲到次數最多的員工的最后一次遲到時間
答案就不貼了
4. 經典的第M條到第N條記錄
先問了一下要SQL Server 2000還是SQL Server 2005的版本,對方馬上笑了,說還是SQL Server 2000的吧,給了一個top的版本(我的blog上寫過類似的東東http://blog.csdn.net/amandag/archive/2008/07/14/2646472.aspx)
5. 算法:最長升序降序序列,7 5 6 8 10 7 9 3 8 7 4 1 8 9 4,則最長的升序序列為5, 6, 8, 10,最長的降序序列為8,7,4,1