
第二題: 
SQL 是用來存取關聯式資料庫系統的結構化查詢語言,它可用來操作及管理資料庫的程
式敘述,請分別說明以下內容: 
(一)在 SQL 資料交易過程中,其 SQL 程式有下列資料交易敘述,請說明它們的功能?
【8分】 
(a). COMMIT 
(b). ROLLBACK 
(二)從 SQL 資料儲存運作的角度,來說明資料表和檢視表(view table)的差異?【8分】 
(三)針對以下 SQL  SELECT 程式指令,請撰寫其程式敘述(包括實例)和說明其功
能?【9分】 
(a). SELECT……TOP   
(b). SELECT……LIKE     
(c). SELECT……DISTINCT 
 
 
 
 
 
 
 
 
第三題: 
假設你正在為某家銀行開發一個網路銀行系統。這個系統將提供銀行的客戶們直接利用
網際網路從事線上的帳務管理。在初期階段,此系統必須提供客戶查詢帳戶,瀏覽交易歷史,
轉帳,申請加入會員等功能。另外,使用者必須先行登入到系統才可以使用各項功能。(註:
我們假設轉帳是指一個人可以將其存款金額從一個帳戶轉移到另一個帳戶。) 
(一)在系統需求分析之後,對於所截取的需求分為功能需求(Function Requirement)和
非功能需求(Non-functional Requirement),請就本案例列出功能需求項目。【5分】 
(二)何謂非功能性需求?請就本案例可能發生的非功能需求列舉兩項。【5分】 
(三)請為這個系統畫出使用案例圖(Use Case Diagram)。【 15 分】 
 
 
 
 
 
 
 
 
第四題: 
二元搜尋樹(Binary Search Tree)是指一棵二元樹狀資料結構,具有下列性質: 
1. 若任意節點的左子樹不空,則左子樹上所有節點的值均小於它的根節點的值; 
2. 若任意節點的右子樹不空,則右子樹上所有節點的值均大於它的根節點的值; 
3. 任意節點的左、右子樹也分別為二元搜尋樹; 
4. 沒有鍵值相等的節點。 
 
上圖為一二元搜尋樹範例,請就上圖回答下列問題: 
(一)上面二元搜尋樹範例若加入一值為 44 的節點則該樹會變如何?請繪出結果。【5分】 
(二)上面二元搜尋樹範例若刪去值為 100 的節點則該樹會變如何?請繪出結果。【5分】 
(三)請列出第(二)小題二元搜尋樹範例中序走訪(inorder traversal)結果。【5分】 
(四)假設同一組節點資料,插入二元搜尋樹的順序不同,會有何不同?中序走訪結果
會相同嗎?為什麼?【5分】 
(五)下面 Java 程式碼為節點類別宣告,請寫出搜尋方法的演算法。【5分】 
class TreeNode<E> { 
  protected E element ; 
  protected TreeNode<E> left ; 
  protected TreeNode<E> right ; 
 
  public TreeNode(E e) { 
      element = e ; 
  } 
} 
boolean search(TreeNode root, E element)若E存在則回傳 true,否則回傳 false.