兩個都是超個性的公司。

??? 漢略宣講只要投簡歷,就會拿到筆試通知。而青牛的宣講,直接就是筆試現場—_______—!

??? 下午青牛,2個小時;晚上漢略,三個小時。

??? 青牛:綜合題+語言題

??? 1.視圖的優點?建立視圖的基本語法結構????????????????????????????????????????????????????

?A:?1)視圖對于數據庫的重構造提供了一定程度的邏輯獨立性。
 數據的邏輯獨立性是指數據庫重構造時,如數據庫擴大 (增加了新字段,新關系等), 用戶和用戶程序不會受影響。
2)簡化了用戶觀點。
視圖的機制使用戶把注意力集中在他所關心的數據上。若這些數據不是直接來自基本表,則可以定義視圖,從而使用戶眼中的數據結構簡單而直接了當, 并可大大簡化用戶的數據查詢操作,特別是把若干表連接在一起的視圖,把從表到表所需要的連接操作向用戶隱蔽了起來。
3)視圖機制使不同的用戶能以不同的方式看待同一數據。
4)視圖機制對機密數據提供了自動的安全保護功能。
可以把機密數據從公共的數據視圖(基本表)中分離出去,即針對不同用戶定義不同的視圖,在用戶視圖中不包括機密數據的字段。這樣,這類數據便不能經由視圖被用戶存取,從而自動地提供了對機密數據的保護。?????????????????????????????????????????????????????????????????????????????????????????????????????????????????? 視圖的基本語法結構:使用CREATE VIEW語句,其語法結構如下:
CREATE VIEW view_name [(column ][,...n])]
AS
select_statement
其中view_name為要建立的視圖的名稱,而AS子句后面的就是建立視圖的查詢語句。而此語句有以下限制:不能包含ORDER BY、COMPUTE和COMPUTE BY等子句;不能包含INTO關鍵字;不能涉及臨時表。

? 2.軟件開發中,XML的用途?

??? XML即Extensible Markup Language(可擴展標記語言)。優點:可擴展性;靈活性;自描述性;簡明性;......XML 的主要目的是在網站上透過服務器與瀏覽器程序來傳輸信息,XML 也被設計來供其它型式的軟件使用。例如,XML 已被用來在金融軟件間往來信息、分發與更新軟件,以及被用來撰寫聲音script 以便能透過電話傳輸。

3. web中cookie和session的不同。

? A:cookie保存在客戶機子上,明碼保留,可以保留相當長的時間(在COOKIE記錄被刪除或者失效日期之前) 。當如果想讓用戶下次登入網站不需要輸入用戶名或者密碼的時候就只能用COOKIE。而session是在服務器端,用sessionID區分不同的用戶,客戶端只保存sessionID。但不會保留太長時間,而且IE在關閉后就自動清除了SESSIONID記錄,在下次登入的時候會請求新的SESSIONID。

4.5分鐘,雙聲道,22.05kHz采樣,16位量化,5:1壓縮,該數字音頻的數據量是多少?

?A:22.05*16*2*5*60/5。

5. 信號量及P、V操作中。

A:實現進程互斥和同步的信號量機制有軟件方法、硬件指令方法、信號量機制和管程等。信號量的值只能通過兩個原子操作:P、V操作來改變,它代表分配資源和釋放資源。每個信號量至少須記錄兩個信息:信號量的值和等待該信號量的進程隊列。

信號量的類型
信號量按聯系進程的關系分成二類:
公用信號量(互斥信號量):它為一組需互斥共享臨界資源的并發進程而設置,代表共享的臨界資源,每個進程均可對它施加P、V操作,即都可申請和釋放該臨界資源,其初始值置為1。
專用信號量(同步信號量):它為一組需同步協作完成任務的并發進程而設置,只有擁有該資源的進程才能對它施加P操作(即可申請資源),而由其合作進程對它施加V操作(即釋放資源)。

6.關系模式,規范化程度。

A:關系數據庫內容。1NF(第一范式),2NF(第二范式),3NF(第三范式)和BCNF。搞不懂,詳見http://www.goood.org/2005/10/09/%e6%95%b0%e6%8d%ae%e5%ba%93%e5%85%b3%e7%b3%bb%e8%8c%83%e5%bc%8f/。

7.密鑰。

A:加密技術通常分為兩大類:“對稱式”和“非對稱式”。對稱式加密就是加密和解密使用同一個密鑰,通常稱之為“Session Key”這種加密技術目前被廣泛采用,如美國政府所采用的DES加密標準就是一種典型的“對稱式”加密法,它的Session Key長度為56Bits。

  非對稱式加密就是加密和解密所使用的不是同一個密鑰,通常有兩個密鑰,稱為“公鑰”和“私鑰”,它們兩個需要配對使用,否則不能打開加密文件。這里的公鑰是指可以對外公布的,私鑰則只有持有者自己知道。在網絡上,對稱式的加密方法很難公開密鑰,而非對稱式的公鑰是可以公開的,不怕別人知道,收件人解密時只要用自己的“私鑰”即可以,這樣就很好地避免了密鑰的傳輸安全性問題。

????? 摘要有時被稱為是第三種加密算法。加密技術中的摘要函數(MAD、MAD和MAD)摘要是一種防止改動的方法,其中用到的函數叫摘要函數。這些函數的輸入可以是任意大小的消息,而輸出是一個固定長度的摘要。對于MD5是16位,SHA是20位。

???? 摘要算法從給定的文本塊中產生一個數字簽名(fingerprint或message digest),數字簽名可以用于防止有人從一個簽名上獲取文本信息或改變文本信息內容和進行身份認證。摘要算法的數字簽名原理在很多加密算法中都被使用,如SO/KEY和PIP(pretty good privacy)。

? ps:網絡數據加密可以用三種方式來實現,即:鏈路加密、節點加密和端到端加密。

8.散列表。

?????? 除了各種樹表外之外,還可以采用散列表技術來實現動態查找表,“散列”既是一種存儲方式,又是一種查找方法,這種查找方法成為散列查找,按散列存儲方式構造的?存儲結構成為散列表,散列技術的核心是散列函數,散列函數是一種將鍵值映射為散列表中的存儲位置的函數,對任意給定的動態查找表t,如果選定了某個“理想的”散?列函數h及相應的散列表l,則對t中的每個元素x,函數值h(x.key)就是x在散列表l中的存儲位置,插入時數據元素x將被安置在該位置上,并且查找x時也到該位置上去查?找,由散列函數決定的數據元素在散列表中的存儲位置稱為散列地址。???????

????? ?在理想的情況下,散列函數是一個一一對應,即每個鍵值對應于一個散列地址,且不同的鍵值對應于不同的散列地址,但在實際應用中,這種情況很少出現,在大多數情況下,出現“同義詞”并發生“沖突”是不可避免的,設有散列函數h和鍵值k1,k2,若?k1<>k2,且h(k1)=h(k2),則稱為k1,k2是同義詞,假如動態查找表中兩個數據元x1,x2,要求將x1,x2存入同一個散列表,而且它們的鍵值是同義詞,這種情況?稱為沖突。

?????? 簡單的說,散列法的基本思想是:由結點的關鍵碼值決定結點的存儲地址。散列表的一個重要特征是平均檢索長度不直接依賴于元素個數。平均檢索長度不隨著元素個數的增加而增加,而是隨著負載因子的增大而增加。如果安排得好,平均檢索長度可以小于1.5。正是由于這個特征,散列表成為一種很受歡迎的組織線性表的方法。

9.漢略的語言題倒是不難。我考得是JAVA。很基礎,但也很不確定:(。

public class Base {
??? public void print(){
??? ?System.out.println("Bast print\n");
??? }
}

public class Inherit extends Base{
??? public void print(){
??? ?System.out.println("Inherit print\n");
??? }
???
??? public static void main(String args[]){
??? ?Inherit in = new Inherit();
??? ?Base base = new Base();
??? ?
??? ?base.print();
??? ?in.print();
??? ?
??? ?base = in;
?? ?
??? ?base.print();

??? ?in.print();
??? }
}

打印結果:

Bast print

Inherit print

Inherit print //注意

Inherit print

10.字符串的==與equals:

public class Test2 {
?public static void main(String args[]) {
??Test2 test = new Test2();
??String a, b;
??StringBuffer c, d;

??a = "abcd";
??b = "abcd";
??System.out.println("when both = 'abcd':?? " + test.print(a, b));

??a = new String("abcd");
??b = new String("abcd");
??System.out.println("when both new String('abcd'):?? " + test.print(a, b));

??a = new String("abcd");
??b = "abcd";
??System.out.println("when one new String('abcd'), another 'abcd':?? " + test.print(a , b));

??c = new StringBuffer("abcd");
??d = new StringBuffer("abcd");

??System.out.println("when both StringBuffer('abcd'):?? " + test.print(c ,d));

?}

?/**
? *?
? */
?private String print(Object oa, Object ob) {
??String result = " ";
??if (oa == ob) {
???result = "?? ==";
??}
??if (oa.equals(ob)) {
???result += "? equals()";
??}
??return result;
?}
}

輸出為:

when both = 'abcd':????? ==? equals()
when both new String('abcd'):????? equals()
when one new String('abcd'), another 'abcd':????? equals()
when both StringBuffer('abcd'):?

11.ArrayList與Vector,HashTable與HashMap

就ArrayList與Vector主要從二方面來說.?
一.同步性:Vector是線程安全的,也就是說是同步的,而ArrayList是線程序不安全的,不是同步的?
二.數據增長:當需要增長時,Vector默認增長為原來一培,而ArrayList卻是原來的一半?
就HashMap與HashTable主要從三方面來說。?
一.歷史原因:Hashtable是基于陳舊的Dictionary類的,HashMap是Java?1.2引進的Map接口的一個實現?
二.同步性:Hashtable是線程安全的,也就是說是同步的,而HashMap是線程序不安全的,不是同步的?
三.值:只有HashMap可以讓你將空值作為一個表的條目的key或value?

漢略篇~~~~

就沒什么了,幾乎所有可能的筆試類型都出現了,性格測試,智商、情商測試,邏輯能力,空間思維能力,還有技術基礎,以及專門的測試試題。ft的是,最后還要手填中英文簡歷,中文建立尚可,英文的就.......當初都是從金山詞霸上copy的,哪里記得怎么寫~~~~~差點用拼音了~~~~~

信威一個筆試題:

要求不用已有函數,從一句話中取出數字,并相加。

public class Test3 {

?public static void main(String args[]) {
??String sentence = "公司成立于1995年9月,共有200人。";
??int begain = 0, sum = 0;
??for (int i = 0; i < sentence.length(); i++) {
???if ((sentence.charAt(i) >= '0') && (sentence.charAt(i) <= '9')) {
????if(begain==0){
?????begain = i;
????}
???} else {
????if(begain>0){
?????String temp = sentence.substring(begain, i);
?????sum += new Integer(temp).intValue();
?????System.out.println(temp);
?????begain=0;
????}
???}
??}
??System.out.println(sum);
?}
}