- 請在同學的電腦上, 安裝 Java JDK 與文字編輯器
- 請同學調整系統環境變數
- 請同學撰寫一 Java 程式, 開啟命令列模式並編譯, 執行程式碼
- 請截上述步驟圖型並編輯至作業文件
- 請到 104 求職網頁, 找到求職者程式語言需求為 Java, 並與數學有所關聯的工作 (至少 3 個), 並編輯至作業文件 (若有興趣, 同學可搜尋該 “公司名稱”, 以及 “面試”, 將找到的資訊編輯至作業)
- 繳交期限: 23:59, 9/19/2017
- 繳交方法: 請寄到老師信箱 chkao@gm.nttu.edu.tw
- 郵件命名: 資料結構第一次作業-學號-姓名
- 作業格式: pdf
- 作業檔案命名: 學號-姓名.pdf
- 請同學舉三個實際生活中的例子, 說明因為呈現空間不足, 導致資料無法正確顯示的狀況
- 請同學針對一軟體系統或網路服務 (Facebook, 選課系統, LOL 等等)
- 請列出所有你/妳可以識別出的系統或服務儲存的資料, 並說明那些資料適合用整數型態 (int) 或長整數型態 (long) 紀載
- 請計算這些整數型態資料, 與長整數型態資料, 共需要多大的儲存空間, 並寫出計算方法
- 舉例: 一位使用者可透過整數型態儲存的資料筆數, 乘上截至目前的所有使用者數量
- 繳交期限: 23:59, 10/3/2017
- 繳交方法: 請寄到老師信箱 chkao@gm.nttu.edu.tw
- 郵件命名: 資料結構第二次作業-學號-姓名
- 作業格式: pdf
- 作業檔案命名: 學號-姓名.pdf
- 請同學基於作業 2, 針對上一次分析的軟體系統或網路服務 (Facebook, 選課系統, LOL 等等)
- 請列出所有你/妳可以識別出的系統或服務儲存的資料, 並多說明那些資料適合用單精度浮點數型態 (float) , 倍精度浮點數型態 (double) , 布林型態 (boolean), 字元型態 (char), 短整數型態 (short), 位元組型態 (byte) 儲存
- 請計算所有你/妳所識別的資料型態, 共需要多大的儲存空間, 並寫出計算方法
- 舉例: 一位使用者所需的所有描述資料, 乘上截至目前的所有使用者數量
- 繳交期限: 23:59, 10/24/2017
- 繳交方法: 請寄到老師信箱 chkao@gm.nttu.edu.tw
- 郵件命名: 資料結構第三次作業-學號-姓名
- 作業格式: pdf 作業檔案命名: 學號-姓名.pdf
- 請同學設計並使用陣列資料結構, 用以表現及儲存多項式
- 請同學依照設計撰寫程式, 以達到以下功能
- 使用者可輸入一多項式相關資料 (如次數與係數), 程式在螢幕上顯示出此多項式 (輸入方法與表現方法由同學自行設計)
- 使用者可輸入兩個多項式資料, 程式可計算兩個多項式的相加結果, 並在螢幕上輸出
- 請同學撰寫文件, 說明如何透過陣列儲存多項式, 以及如何進行存取與多項式加法計算
- 繳交期限: 23:59, 11/21/2017
- 繳交方法: 請寄到老師信箱 chkao@gm.nttu.edu.tw
- 郵件命名: 資料結構第四次作業-學號-姓名
- 作業格式: pdf (設計文件) 與 java (原始碼)
- 請同學設計實作一中文檢查程式
- 以一段中文網路新聞敘述, 透過字串儲存
- 使用字串取代方法, 取代不需要的標點符號
- 使用字串切割方法, 將中文敘述切割 (如固定切兩個字, 或三個字, 亦可考慮讓使用者輸入切割設定)
- 中文敘述切割後, 利用兩個陣列儲存出現過的中文字詞, 以及中文字詞出現過的次數
- 在螢幕上輸出中文字詞與出現次數
- 請同學撰寫文件, 說明如何設計中文檢查程式, 檢查法則的想法, 以及目前的優缺點
- 繳交期限: 23:59, 12/05/2017
- 繳交方法: 請寄到老師信箱 chkao@gm.nttu.edu.tw
- 郵件命名: 資料結構第五次作業-學號-姓名
- 作業格式: pdf (設計文件) 與 java (原始碼)
- 請同學基於 “物件與類別” 以及 “鏈結串列” 設計實作以下程式
- 設計一 “待辦事項” 類別, “待辦事項” 包含 “工作摘要” 與 “工作詳細內容” 資料
- 設計 “待辦事項” 的操作方法 (如 “設定待辦事項資料” 與 “取得待辦事項資料”)
- 由使用者指定需要建立的待辦事項數量, 並由程式一一接收使用者輸入
- 透過鏈結串列記載所產生的待辦事項物件
- 接收完成後, 透過走訪鏈結串列, 印出所有待辦事項
- 挑戰題: 提供使用者介面, 允許使用者建立新待辦事項, 瀏覽所有待辦事項, 以及離開程式
- 請同學撰寫文件, 說明如何設計 “待辦事項” 類別, 產生物件, 串列操作, 以及使用者輸入處理
- 繳交期限: 23:59, 12/26/2017
- 繳交方法: 請寄到老師信箱 chkao@gm.nttu.edu.tw
- 郵件命名: 資料結構第六次作業-學號-姓名
- 作業格式: pdf (設計文件) 與 java (原始碼)
- 由同學所實際遭遇的 “問題,” “需求,” “想法” 等, 透過 Java 程式語言實作一軟體程式, 並解決 (完成) 所遭遇的 “問題,” “需求,” “想法”
- 確立問題, 需求或想法
- 思考解決 (完成) 方法, 並設計或挑選所需的資料結構
- 透過 Java 程式語言依照解決 (完成) 方法與資料結構進行設計與實作
- 對於所實作的軟體程式進行驗證
- 專案分工與心得分享
- 請製作投影片並上台報告, 並實際展示軟體程式的功能
- 期末報告時間: 13:10-16:00, 1/10/2018
- 報告長度: 每組 5-7 分鐘
- 分組人數: 1 至 4 位同學
- 請於報告後將投影片, 程式碼, 文件, 寄到老師電子郵件信箱 (chkao@gm.nttu.edu.tw)
- 報告主題參考
- 大富翁 (如何用資料結構記載玩家資訊, 地圖資訊)
- 文字探勘器 (如何用資料結構記載文字, 進行字詞切割, 儲存, 與比對)
- 字典或單字記憶器 (如何用資料結構記載單字與註釋, 並提供查詢, 瀏覽, 新增, 刪除, 更新等功能)
- 記帳程式 (如何用資料結構記載收支項目, 日期, 金額, 並提供查詢, 瀏覽, 新增, 刪除, 更新等功能)
- 數學式表示 (如何用資料結構記載數學式, 並能完成數學運算)
- 各種資料結構的空間使用, 及運算效能比較
- 數學式表示與計算 (透過堆疊完成)
- 迷宮設計與走迷宮方法 (透過二維陣列與堆疊完成)
- 堆疊與佇列實現 (由陣列或串列實作)