教學大綱表 (109學年度 第1學期)
請遵守智慧財產權,勿使用非法影印教科書,避免觸法。
課程名稱
Course Title
(中文) 資料結構
(英文) Data Structures
開課單位
Departments
資訊工程學系
課程代碼
Course No.
I2400
授課教師
Instructor
謝尚琳
學分數
Credit
3.0 必/選修
core required/optional
必修 開課年級
Level
大二
先修科目或先備能力(Course Pre-requisites):Familiarity with C or some other programming language, and coding ability
課程概述與目標(Course Overview and Goals):Overview: Introduction of linked lists, trees, stacks and queues, graphs, sorting, and hashing.
Goal: To create a foundation upon which many other computer science fields may be based. Emphasis is placed on data structures and their associated algorithms.
教科書(Textbook) Data Abstraction and Problem Solving with C++ - 5th Edition, Frank M. Carrano, Addison Wesley, ISBN 0-321-48500-9
參考教材(Reference) C/C++: How to Program, Deitel Books, Prentice Hall, 2004
課程大綱 Syllabus 學生學習目標
Learning Objectives
單元學習活動
Learning Activities
學習成效評量
Evaluation
備註
Notes

No.
單元主題
Unit topic
內容綱要
Content summary
1 A C++ Primer Data abstraction using C++ Data abstraction using C++  
2 Principle of Programming and Software Engineering *Software engineering and object oriented design
*Key issues in programming
*Software engineering and object oriented design
*Key issues in programming
 
3 Recurrsion *Recursive solutions
*Searching an array
*Recursion and effeciency
*Recursive solutions
*Searching an array
*Recursion and effeciency
 
4 Recurrsion *Recursive solutions
*Searching an array
*Recursion and effeciency
*Recursive solutions
*Searching an array
*Recursion and effeciency
 
5 Data Abstraction *Abstract data type
*Specifying ADTs
*Implementing ADTs
*Abstract data type
*Specifying ADTs
*Implementing ADTs
 
6 Linked Lists *Programming with linked lists
*Variations of the linked lists
*The C++ standard template library
*Programming with linked lists
*Variations of the linked lists
*The C++ standard template library
 
7 Recursion as a Problem Solving Technique *Backtracking
*Defining languages
*The relationship between recursion and mathematical Induction
*Backtracking
*Defining languages
*The relationship between recursion and mathematical Induction
 
8 Stack Definition, application, and implementation Definition, application, and implementation  
9 Stack Definition, application, and implementation Definition, application, and implementation  
10 Midterm Midterm on materials from first half of the semester Midterm on materials from first half of the semester  
11 Queues and dequeues Definition and implementation Definition and implementation  
12 Queues and dequeues Definition and implementation Definition and implementation  
13 Trees threaded binary tree; the Binary Search Tree abstract type and its representation; operations on the BST; Heaps: its implementations and applications; selection trees; forests; sets represented by trees and set operations threaded binary tree; the Binary Search Tree abstract type and its representation; operations on the BST; Heaps: its implementations and applications; selection trees; forests; sets represented by trees and set operations  
14 Graphs The Graph abstract data type, its terminology and representations; dfs and bfs; connected and biconnected components; spanning trees and minimum cost spanning trees; shortest paths The Graph abstract data type, its terminology and representations; dfs and bfs; connected and biconnected components; spanning trees and minimum cost spanning trees; shortest paths  
15 Graphs The Graph abstract data type, its terminology and representations; dfs and bfs; connected and biconnected components; spanning trees and minimum cost spanning trees; shortest paths The Graph abstract data type, its terminology and representations; dfs and bfs; connected and biconnected components; spanning trees and minimum cost spanning trees; shortest paths  
16 Internal Sorting Quick sort, merge sort, and heap sort Quick sort, merge sort, and heap sort  
17 Hashing Hash tables, hashing functions, and overflow handling Hash tables, hashing functions, and overflow handling  
18 Final Final examination on materials from the second half of the semester Final examination on materials from the second half of the semester  


教學要點概述:
1.自編教材 Handout by Instructor:
□ 1-1.簡報 Slides
□ 1-2.影音教材 Videos
□ 1-3.教具 Teaching Aids
□ 1-4.教科書 Textbook
□ 1-5.其他 Other
□ 2.自編評量工具/量表 Educational Assessment
□ 3.教科書作者提供 Textbook

成績考核 Performance Evaluation: 期末考:25%   期中考:25%   其他評量:9%   上機測驗:40%   作業:1%  

教學資源(Teaching Resources):
□ 教材電子檔(Soft Copy of the Handout or the Textbook)
□ 課程網站(Website)
教學相關配合事項:None
課程網站(Website):http://elearn.ttu.edu.tw
扣考規定:https://curri.ttu.edu.tw/p/412-1033-1254.php