資料結構與演算法(上)

類別:系必修
註記:

課程大綱:學年學期Academic Year/Semester: 113學年度第1學期
課程代號Course Number: 130021
授課教師Instructor: 游子宜
課程中文名稱Course Title(Chinese): 資料結構與演算法(上)
課程英文名稱Course Title(English): Data Structures and Algorithms (1)
開課年級Grade: 2
學分數Credits: 3.0學分
上課地點Class location: 管371
上課時間Class hours: 3bcd
本課程可培養學生之核心能力(Core competency)如下列:
資訊技術應用與創新能力(學士班)
一、課程目標Course objectives:
根據中央通訊社在 2016-3-30的報導,我們國家教育研究院規劃的107課綱草案,教育部將會重組「課審會」進行審議。根據既定草案內容,程式設計屬於科技領域的一部分,國中、高中階段列為必修課程。可見的寫程式已經是國家的既定政策。往後程式設計的課程甚至會延伸到國小的教育中。可見會寫程式很重要。

但是寫程式跟會寫一個好程式是不一樣的。什麼是好的程式哪? 好的程式不僅要能正確的解決問題跟算出正確的答案,更需要在正確的前提下去兼顧執行效率跟有效的管控記憶體空間。簡單說,這是更進階的程式設計課程。在學會了基礎的程式設計跟物件導向之後,資料結構這門課就是要來講授如何將演算法結合資料的設計包在物件導向的技術裡的學科跟一種設計的藝術。

在電腦科學的領域中,資料與資料之間的關係常常被稱為資料結構(Data Structure)。在有限步驟內解決數學問題的程序,就常被定義成為演算法(Algorithm)。更具體來說,資料結構主要是探討如何將資料更有組織地存放到電腦記憶體中,以提升程式之執行效率的一門學問。課程的目標除了講授常見常用的資料結構外,希望能藉著程式的實作來培養同學在面對複雜的問題時能撰寫有效率的程式並以較少的計算步驟來解決問題。在本課程中我們將培養同學對問題的分析、適當資料結構的設計及如何透過電腦程式實作達到經驗的累積,進而達到對資訊技術應用、在專題撰寫訓練創新能力及將來在就業上資訊能力的提升及養成。

本課程主要的目的及核心能力為資訊技術應用與創新能力。為了幫助修課同學達到這樣的目標,本課程在教授上會有如下的實施:
1> 不定齊將上課內容拍攝成影片上傳到課程資訊網(moodle)。
影片的內容包括課本的理論、程式撰寫的大綱及方向、課外的補充教材、上課的作業等。
3> 該週若有影片,則上課後一週將關閉影片,不再開放,同學務請在關閉前做完預習複習的功課。
若有正當理由需額外時間看完影片,需與授課老師或助教聯絡。
4> 為題生討論風氣,須將同學分組。同學的座位會被固定,同組同學也會座在一起。
5> 第一堂上課時授課老師會以組別、個人方式讓同學就先前上課的影片內容作討論及問答,並
依同學回答的準確性做課堂參與度的加分標準。
6> 為培養資訊技術的精進及提升,落實理論的實作,本課程需要撰寫程式。
程式分為個人程式及分組程式作業。撰寫的語言不限,但需要可以正確的編譯及執行。
7> 同學的作業只能用C/C++語言、Java 語言或是C#語言,
若要用其它語言,需開學後兩週就需決定並告知助教。
程式作業分數與使用哪一種語言撰寫無關,但與正確、完成作業要求有關。
8> 本課程為提高學習電腦語言的多樣性,本課程將以C#程式語言作為授課的工具。
意即以C#來示範課程的理論跟實作並用來撰寫作業的一部分,
同學可以用課堂上所demo的作業來完成整份完整的作業並繳交。
並使用Visual Studio 2013/2015為編譯執行的工具。
9> C#不是本課程的必修條件,跟作業成績無關。
同學可依自己的習慣選用程式語言來繳交作業。
但無法容忍任何的抄襲。作業或考試有任何抄襲交由校規議處。
10> 個人程式作業當天交,組別作業一週後交。
藉著不斷的撰寫跟討論,希能提升資訊技術應用與創新能力。

二、師生晤談時間及地點Instructor office hours:
地點:管院B24,週三: 14:00~16:00
三、授課方式Teaching approach:
除一般課堂上課(投影片、課本),同學需在課前預習並在課堂上討論。
同學依特定議題報告及操作(修課同學帶筆電來上課跟實習)
四、評量方式Grading criteria:(含評量項目及所佔比例,請運用多元評量)

評量方式(方案一)
期中考(20%)(筆試)+ 期中考(20%)(上機)+ 隨堂考(共30%)(含上機) + 期末考(30%)(筆試&上機考)
評量方式(方案二)
期中考(30%)(筆試)+ 期中考(10%)(上機)+ 隨堂考(共30%)(含上機) + 期末考(30%)(筆試&上機考)

五、參考書目Textbook & references:(酌列作者姓名、出版年份、書名、出版書局等資料)
(一)教科書:Data Structures and Algorithms Using C# (by Michael Mamillan)
publisher: Cambridge, ISBN-10: 0521670152, March 26, 2007
(二)參考書:資料結構使用C# 碁峯書局 作者: 蔡明志 書號 AEE038900 (June, 2011)

若因疫情關係,如本校全面停課改採線上遠距教學時,遠距線上教學相關訊息會在學校教學資訊網 moodle 上公告(通訊軟體:本校的BBB、BBB提供的方式點名、課堂聯繫管道:moodle 及時公告)

本校於110學年度第1學期起實施「16+2週」,即16週實體課程 + 2週彈性授課。
除1~16週實體授課外,+2週的彈性授課方式,將採數位學習、專題與實作(要求學生分組完成作業,要請小組成員先設定共同目標,並請小組成員說明如何彼此支援、協助、分享與鼓勵。實施原則包括:1. 設立共同目標,2. 成員彼此支援,3. 觀察學習中的互動,4. 訓練合作的社交技巧,5. 檢視合作過程與成果)。

六、教學進度(週次、授課主題、教學活動、評量方式/作業、章節)
Course schedule (week, topic, activities, evaluation/assignment, text, etc.):
第1週:課程內容介紹、願景、學習目標及分組、學習的工具介紹、C#語言的認識 Lecture
第2週:演算法的分析(Big O)、C#語言的認識及撰寫 Lecture
第3週:資料結構: 陣列的應用(一)(矩陣的表示), Lecture, 課堂實作
第4週:資料結構: 陣列的應用(一)(多項式的應用), Lecture
第5週:資料結構: 陣列的應用(二)(魔術方陣), Lecture
第6週:資料結構: 堆疊介紹,Quiz (陣列)
第7週:資料結構: 佇列介紹,Lecture,
第8週:資料結構: 堆疊與佇列,Lecture,Quiz
第9週:第一次期中考
第10週:資料結構:環狀佇列與多堆疊的操作,Lecture & 實作
第11週:資料結構:單向鏈結串列的介紹及實作,Lecture & 實作
第12週:資料結構:環狀鏈結串列的介紹及實作,Lecture & 實作Quiz
第13週:資料結構:雙向環狀鏈結串列的介紹及實作,Quiz
第14週:資料結構:雙向環狀鏈結串列的介紹及實作, Quiz
第15週:資料結構:遞迴的介紹及實作,直接遞迴與間接遞迴的介紹及實作 Quiz
第16週:資料結構:期末考 (筆試/上機考)自主學習

七、TA協助事項Teaching Assistant tasks:
電腦投影機的設定、資料影印、成績作業收集、協助上課事宜、改作業、協助回答同學問題
八、備註Remarks:
本課程不限使用的語言(C/Java),但課堂上會教授 C# 語言,也鼓勵同學用C#交作業。
九、本課程可培養學生之核心能力與教學活動及評量方法對應表

教學活動:
1.課堂討論(含個案討論)
2.書面報告、作業、作品、實驗
3.學生口頭報告
4.課程規劃之校外參訪及實習
5.證照/檢定
6.參與課程規劃之校內外活動及競賽
7.課外閱讀
8.其他

評量方法:
1.紙筆考試或測驗
2.實作評量﹙含口頭、書面報告、實習、表現評量﹚
3.其他表現

培養學生資訊技術應用與創新能力(學士班)之教學活動:1, 2, 3, 7
培養學生資訊技術應用與創新能力(學士班)之評量方法:1, 2, 3

本課程之課程規範如下:
修習本課程前應具備之能力或先修課程: 程式設計(上)

請尊重智慧財產,禁止使用盜版或影印教科書

本課程之課程規範如下:

修習本課程前應具備之能力或先修課程: 程式設計(上)(下)

課程內容:
1. Analysis of Algorithms
2. Arrays and Structures(Dynamically Allocated Arrays, Polynomials, Sparse Matrices, Strings)
3. Stacks and Queues
4. Linked Lists(Singly and Doubly Linked Lists, Polynomials, Equivalence Classes, Sparse Matrices)
5. Trees(Binary Trees, Heaps, Disjoint Sets, Counting Binary Trees)
6. Hashing

作業題庫與進行方式建議: 每兩周一個, 程式作業要求學生繳交兩次, 第一次為初稿, 第二次係依批改意見修正後繳交. 建議題目如下
1. Asymptotic Notation書面作業
2. Knight Problem
3. Shortest Path of Maze
4. Evaluation of Expression
5. Linked List Polynomial
6. Basic Tree Operations
7. Min and Max Heap
8. Find and Union
◎ 請同學們遵守智慧財產權及不得不法影印。
Course participants should respect intellectual property rights. Illegal copying of copyrighted course materials is strictly prohibited.
◎ 請任課教師在教學過程中適當引導學生使用正版教科書,並適時提醒或制止學生使用非法影印教科書,或通報學校予以輔導。
Instructors should ensure that students purchase licensed textbooks and prevent students from using illegally copied texts.

situs slot gacor provider terbaik agen toto slot terpercaya 2023 agen toto togel terpercaya 2023 situs toto togel pasaran resmi terbaik bandar toto macau pasaran resmi toto togel bandar toto slot gacor 4d 2023 bo togel online pasaran terlengkap sepanjang masa bo toto slot terlengkap sepanjang masa situs toto togel 2023 bet 100 perak daftar toto slot dan toto togel 2023 bermain toto togel dengan bet hanya 100 perak daftar toto slot bonus new member terpercaya bermain toto slot pelayanan 24 jam nonstop situs toto togel terpercaya situs toto togel online terbaik winsortoto winsortoto winsortoto winsortoto winsortoto winsortoto unsurtoto unsurtoto unsurtoto winsortoto winsortoto winsortoto rasa4d rasa4d rasa4d gampangtoto gampangtoto gampangtoto winsortoto unsurtoto gampangtoto rasa4d bungtoto bandar toto togel terbesar hadiah 4d 10 juta daftar winsortoto situs toto terbaik winsortoto situs toto slot gacor dengan toto togel terbaik winsortoto situs toto terpercaya bet 100 perak winsortoto agen toto togel dan situs toto slot 4d winsortoto situs toto togel online deposit 10rb winsortoto situs toto togel online resmi hadiah 4d 10 juta winsortoto agen toto togel online terpercaya winsortoto agen toto slot dan situs toto togel resmi winsortoto situs toto togel 4d terpercaya winsortoto bandar toto togel dan toto slot winsortoto situs toto togel online resmi terbesar winsortoto situs toto togel dan agen toto slot terpercaya winsortoto situs toto terpercaya beragam bonus winsortoto situs toto terpercaya toto togel dan toto slot gacor winsortoto situs togel online dan slot online terpercaya winsortoto situs togel online hadiah terbesar winsortoto agen toto togel bonus harian terbesar winsortoto agen togel online terlengkap bet 100 perak winsortoto situs toto togel 4d dan toto slot 4d terbaik winsortoto situs toto togel dan toto slot terpercaya winsortoto bandar toto togel online terpercaya 2023 winsortoto agen toto togel 4d dan toto slot 4d winsortoto agen toto togel online banyak bonus terbesar winsortoto situs toto terpercaya bonus new member winsortoto situs togel online resmi terpercaya pasaran terlengkap winsortoto situs toto togel online 4d terpercaya situs toto togel deposit pulsa tanpa potongan winsortoto situs toto slot pasti slot gacor winsortoto situs toto slot dan toto togel hadiah terbaik winsortoto situs toto terpercaya permainan resmi dan terpercaya winsortoto situs toto resmi bonus new member 100rb tanpa potongan winsortoto toto slot gacor dan togel online resmi terpercaya winsortoto situs toto toge online terpercaya di Indonesia winsortoto toto togel online bonus new member terbesar winsortoto agen toto togel resmi hadiah 4d 10 juta terpercaya winsortoto toto togel online hadiah 4d 10 juta bet 100 winsortoto situs togel online terlengkap dan terpercaya winsortoto situs togel online resmi dan toto slot gacor winsortoto situs toto togel dan agen toto slot gacor winsortoto situs toto togel permainan toto togel dan toto slot winsortoto situs toto terpercaya bonus menarik winsortoto situs toto togel online terpercaya winsortoto bandar toto togel dan toto slot terpercaya winsortoto situs toto togel online terlengkap dan terpercaya winsortoto situs toto togel online winsortoto situs toto terpercaya togel online dan slot online resmi winsortoto situs toto dengan permainan togel 4d dan slot 4d winsortoto situs toto terpercaya permainan togel online terlengkap winsortoto agen toto togel dan situs toto resmi winsortoto toto togel dan toto slot terpercaya dan terbaik winsortoto agen toto togel dan toto slot resmi di Indonesia winsortoto situs toto terpercaya permainan online resmi winsortoto unsurtoto gampangtoto bungtoto rasa4d titi4d ltdtoto bobatoto bobatoto situs toto togel slot situs bandar toto togel slot terpercaya titi4d titi4d login titi4d daftar titi4d slot titi4d togel situs titi4d titi4d login titi4d daftar titi4d titi4d togel titi4d slot situs titi4d agen titi4d bandar titi4d