1 / 14

資料結構 Data Structures

資料結構 Data Structures. Fall 2006 , 95 學年第一學期. Instructor : 陳宗正. Instructor : 陳宗正 Office: 第二教學大樓 『 6 樓 』 C623 Tel: (06) 2785123 ext. 2408 E-mail: tchen1@mail.cju.edu.tw Textbook: Horowitz, Shani and Anderson-Freed Fundamentals of Data Structures in C ( 新月圖書 ) Reference

Télécharger la présentation

資料結構 Data Structures

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 資料結構Data Structures Fall 2006, 95學年第一學期 Instructor: 陳宗正

  2. Instructor : 陳宗正 • Office: 第二教學大樓 『 6樓』 C623 • Tel: (06) 2785123 ext. 2408 • E-mail: tchen1@mail.cju.edu.tw • Textbook: Horowitz, Shani and Anderson-Freed Fundamentals of Data Structures in C (新月圖書) • Reference Sedgewick, Algorithms in C (Parts 1-4) 3rd ed. Sedgewick, Algorithms in C (Parts 5) 3rd ed. Goodrich, Data Structures and Algorithms in C++ Stephen Prata, C Primer Plus 5th ed.

  3. Data Structures 重要 • What is data structure? • 探討一群相關資料的資料表示方法與資料運作方法 • Objective • 使用最有效率的方式,對一群相關資料進行處理 • Programs = Data structures + Algorithms • How to analyze and design? 1. 定義資料並描述該資料對欲處理物件的特性 2. 找出並描述對該資料的各種運算 3. 考慮最適當的Data Structure,使得各種運算 的效率最佳 4. 設計一個完整的Algorithm

  4. Advantages of Studying Data Structures • Solving problems by existing methods • Understanding good algorithms • Learning analysis and design • Building complex software systems • Documentation • Better programming skills • Knowing hardware & software • Knowingan arsenal of algorithms 重要

  5. Foundation for Other Fields • Various fields in our department • Communication system • RF Integrated Circuits • Signal Processing/Image Processing • Mechatronics Integrated Engineering • Computer Graphics • VLSI/SOC • IC Design

  6. Foundation for Other Fields • Theories • shortest path problem • queuing theory & spanning tree • Estimation & Control theory • Optimization & simulation • Programming techniques • pointer • linked list • stack, queue, heap, hash • protocol, driver, firmware design

  7. ZZZZZZZZ~~Z Question to Ask How do you start?

  8. Start with Understanding Analysis Design

  9. Example • Problem: • Read in 3 integers • Find the largest and the smallest • Solution: • Using flowchart • Using pseudocode

  10. Structured Programming • One IN one OUT flow • Three basic constructs Sequence Selection Iteration

  11. Pseudocode • English-like (Chinese-like) representation of the code required for an algorithm • Algorithm– Logical steps necessary to solve a problem in a computer • Part English and part structured code • English part– easy to read • Code part– extended version of the basic algorithmic constructs

  12. Writing a Program – System Life Cycle • Requirements • Analysis • Top-down analysis • Design • Abstract data type • Specification of algorithms (strategies) • Detail design • Not only create a system could be written in several languages, but pick the most efficient. • Refinement and coding • Implementation – coding in C • Verification • Correctness proofs • Testing

  13. C Programming Tools • Visual Studio 6 • Visual studio 6 includes C++, BASIC, JAVA and SQL • VC++ 6 is needed in this class • The window command or console mode is required only • NO RECOMMENDED working with the GUI/MFC • Visual Studio 2005 or .NET • New version of Microsoft Development Suite • .NET and 2005 include various of Server Protocol • C compiler on Unix and Linux and gcc and Dev-C++ on Windows –not recommended/acceptable

  14. 成績計算方式 • 期中考與期末考(筆試): • 各佔25% (close book) • 作業: 40% • 共四次作業,每次各佔10% • 作業記分方式: (遲交以0分計算) • (80%) 報告之完整性:須包含 • (一) 簡介及問題描述 • (二) 理論分析 • (三) 演算法則 • (四) 執行結果與討論 • (五) 程式 • (20%) 程式經壓縮後(RAR),以學號為檔案名稱,交予班代。班代須將其彙整後,燒成光碟,當天繳交。 • 若報告或程式二者缺一,則作業分數以0分計算 • 嚴禁抄襲、複製等行為,但鼓勵同學互相討論 • 鼓勵同學經常向老師或助教請教問題。老師及助教各有5%的學習態度分數。若請教的問題太過淺顯易懂,或課堂上已強調多次者,學習態度分數將被倒扣。

More Related