1 / 18

Teaching Data Structures

Teaching Data Structures. Richard M. Stillman, M.D. Nova Southeastern University  & Alan R. Peslak, Ph.D. Penn State University. 2002 Model Curriculum. 2002.5: Programming, Data, File and Object Structures Catalog: Abstract data type construction and use

eden
Download Presentation

Teaching 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. Teaching Data Structures Richard M. Stillman, M.D. Nova Southeastern University  & Alan R. Peslak, Ph.D. Penn State University

  2. 2002 Model Curriculum • 2002.5: Programming, Data, File and Object Structures • Catalog:Abstract data type constructionand use • Scope:Design and application of data and file structures • Topics:Data structures and representation • Discussion:Specific data structures including arrays, records, stacks, queues, and trees

  3. What to Teach? • How to apply abstract data types versus • How to build abstract data types

  4. Apply • "Software Engineering is moving away from emphasis on the creation of code, toward emphasis on components and code reuse. The teaching of data structures needs to adjust to that change." -- Collins et al, 2003

  5. Build • “Data structures are a vehicle for developing thinking skills that are important and transferable beyond their immediate application to data structures… [and build an] awareness that the obvious or straightforward way to do things is often markedly inferior to clever ways that have been discovered…" -- Lister et al, 2004

  6. Our Didactic Methods • Assignments • Course Project • Build any five ADTs • Apply these five ADTs i.e., Build & Apply

  7. Basic ADTs: Rehashed design of those provided by instructor or text Applications: Rudimentary use of of the ADTs Creative ADTs: Different in some way from the usual, e.g., dropped assumptions, different algorithm Applications: Interesting, complex, or novel Classification of Project Quality

  8. What’s a Creative Project? ImageRenderer, which uses a Priority Queue

  9. What’s a Creative Project? ProteinTaxonomy, which uses a BST

  10. Results • 38 students • 16 students did ‘creative’ projects • 19 students had professional experience beyond entry-level employment

  11. What ADTs Did The Better Students Select?

  12. Employment Background Versus Project Quality

  13. Project Grades

  14. Employment Background Versus Final Course Grade

  15. Project Choice VersusGrade in Rest of Course

  16. Summary • Our data structures students self-select ADTs to implement for a final project • Project grades are based upon creativity and complexity • We’ve compared final project choice with: • Students’ professional background • Independent measures of students’ performance

  17. Summary (continued) • Those students with more professional experience, tended to implement the more creative ADTs • Those students who implemented the more complex ADTs, tended to do better in the other aspects of the course

  18. Conclusions • A student’s decision to implement a more creative final project led to: • A better grade on the project (obviously), • A better grade in the other aspects of the course (interestingly), and • A better understanding of both the implementation and application of abstract data structures (hopefully).

More Related