中原大學九十三學年度碩士班入學招生考試
93年3月26日 14:00~15:30 資訊管理學系  誠實是我們珍視的美德,
我們喜愛「拒絕作弊,堅守正直」的你!
科目:資料結構及資料庫  
第一題: 排序二元樹(二分搜尋樹)的建立
設有下列資料型態的宣告:
  問題: 請用C語言寫一副程式,將一資料加到排序二元樹內。(12%)
  規定: 參數包括排序二元樹的樹根和欲加入的資料。參數排序二元樹可能為空,也就是欲加入之資料為第一筆資料。
     
第二題: 排序二元樹節點的刪除。
  問題: 請用C語言或虛擬碼(Pseudo-code)寫出刪除節點的運作。(12%)
  規定1: 若刪除的節點有兩個兒子,用中序立即前行節點(inorder immediate predecessor)方法。
  規定2: 若用虛擬碼寫作時,請詳細寫出各運作。
     
第三題: 樹之追蹤
  問題1: 請將下列二元樹之節點資料用反後序(RLN)追蹤方式依序寫出來。(6%)
  問題2: 請將下列二元樹之節點資料用後序(LRN)追蹤方式依序寫出來。(6%)
   
     
第四題: 請寫出Sifting Sort (過濾排序法)之運作原理。(12%)
     
第五題:  
  設R關係表上的資料與時間無關,也就是上列資料是R關係表所有可能的資料。
  問題1: 請找出該關係表的功能相依性(Functional dependency)。並簡述理由(理由未寫或寫錯者一律不給分)(4%)
  問題2: 請找出關係表的備選鍵(Candicate Key),並簡述理由(理由未寫或寫錯者一律不給分) (4%)
  問題3: 請證明R關係表是否為第二正規化關係表。(4%)
  問題4: 請證明R關係表是否為第三正規化關係表。(4%)
     
第六題: SQL查詢語言
  設有下列關係表及各特性項的資料長度(Byte)
 
  組件關係表,係表示一產品由哪些配件所組裝而成,及組裝該一產品所需的配件數量。
  問題1: 請用SQL語言,查詢有哪些配件用於5種以上的產品,查詢結果包括配件編號。(6%)
  問題2: 請用多層次子查詢句的寫作方式,查詢組裝產品名稱為" B_產品K"的配件有哪些及其存放的倉庫。(6%)
  查詢結果包括:倉庫編號、倉庫名稱、配件名稱、配件編號、配件庫存。
     
第七題:
  假設每個配件祇存放在一個倉庫,共有10個倉庫,每個倉庫都有不同的編號和名稱,平均每個倉庫存放100個配件。另設組裝一產品需用同一配件的數量>=5佔組件列錄數的5%。組件共有2000個列錄,產品共有200個列錄,配件共有1000個列錄。
  問題: 請根據上列樹形及假設,並根據第六題的關係表所列的資料長度,評估f2,f3,f5,f6,f8,f9,f10資料流量。(8%)
  注意: 特別小心圖中的聯結皆為等聯結(equi-join)而非自然聯結(natural join)。梯形表示投射(projection),側梯形表示選擇(selection)。
  規定: 為了方便考卷之批閱,在回答時,請寫出估算公式即可。
例f1=30*10 不需要計算出其值。
     
第八題: View之update
設有下列產品基本關係表及View 產品_Check和View 產品_NO_Check之定義。
 
  根據"若一View關係表定義於單一關係表,在更新時,若能確定的認定出列錄,則其更新可被接受"原則,回答下列問題。(下列4個問題彼此獨立)
  問題1: 請寫出做完下列指令後,基本關係表的內容,並簡述理由(理由未寫或錯者,一律不給分) (4%)
  問題2: 請寫出做完下列指令後,基本關係表的內容,並簡述理由(理由未寫或錯者,一律不給分) (4%)
  問題3: 請寫出做完下列指令後,基本關係表的內容,並簡述理由(理由未寫或錯者,一律不給分) (4%)
  問題4: 請寫出做完下列指令後,基本關係表的內容,並簡述理由(理由未寫或錯者,一律不給分) (4%)
     
--- END---