60 likes | 224 Views
CS211 Algorithms & Data Structures, with GUI Programming 2004-2005. http://www.minds.may.ie/~dez/cs211/. Part One (weeks 1 –6): Advanced Data Structures. Dr. J. Paul Gibson (pgibson@cs.nuim.ie) Part Two (weeks 7 –12) : GUI Design and Programming Des Traynor (dtraynor@cs.nuim.ie).
E N D
CS211 Algorithms & Data Structures, with GUI Programming 2004-2005 http://www.minds.may.ie/~dez/cs211/ Part One (weeks 1 –6): Advanced Data Structures. Dr. J. Paul Gibson (pgibson@cs.nuim.ie) Part Two (weeks 7 –12) : GUI Design and Programming Des Traynor (dtraynor@cs.nuim.ie) Lectures: 11-12 Thursday JH6, 2-4 Thursday SLT Lab.s: 2- 4 Friday L4 (Des Traynor will be lab. co-ordinator) 2004/2005: CS211
Course Objectives • To cover a selection of advanced data structures • To cover Graphical User Interface Development using the Swing Toolkit • To cover Event Based Programming in Java • Course Structure and assessment • 24 lecture hours, 2 per week. One lecture will be on the theory of each topic, the second lecture will be "hands on", where code will be written, for use in the following lab. • 12 labs , 2 hours each. There will be two exams, in week 6 and eleven • Each Lab exam is worth 12.5% of your final grade. 5% will be awarded for attendance and completing lab work. This gives a total continuous assessment mark of 30%. • Course Resources • All lecture slides will be available in Microsoft Powerpoint (.ppt) or in Adobe PDF format (.pdf). NOTE: Week 4 beginning Monday 21st February – special guest lecturer 2004/2005: CS211
Recommended Books and Websites (see http://www.minds.may.ie/~dez/cs211/) • There are two books that we recommend you borrow from the library, or purchase (if you wish). They are... • Object Oriented Programming Using Java: A Class Centered Approach by Gary J. Bronson. ISBN: 0-534-38455-2 CourseDirect • Data Structures and Abstractions with Java by Frank M. Carrano and Walter Savitch. ISBN: 0-13-017489-0Amazon • The following links will prove very helpful to you whilst coding in Java: • The Swing Tutorial - As provided by java.sun.com • The Java Homepage - This is site you should use for information on all classes in the Java language • If you find links/sites etc that you find particularily helpful for the course , please mail Des and he will add them to the module web site. 2004/2005: CS211
Advanced Data Structures and Algorithms – Content Overview 1 Arrays of non-primitives Hashing and hashing tables 2 Graphs implemented as 2-D arrays Metrics Languages and grammars Paths Classic graph algorithms (P vs NP) 3 Restrictions on graphs – and alternative implementations Trees: Binary, Balanced, etc … Lists: Stacks Queues, etc… Grids and multiple dimensions 4 Nondeterministic Data Structures and Algorithms Skip Lists 5 Searching and sorting revisited – AI and backtracking 6 Advanced topics – equivalence, refinement, genericity, redundancy, correctness etc … 2004/2005: CS211
Advanced Data Structures and Algorithms – Style Overview • Focus on problem solving and problem-based learning • Problems will mostly be games and/or puzzles • Lectures will be interactive • Much of the work will be informal (on the board) … so attendance is recommended • You are expected to work in the lab.s in your own time … just to keep up • This material is hard – linking theory with practice is difficult 2004/2005: CS211
Let’s Go To The Board (If we have time) Question: Why do we talk about data structures and algorithms? [Example: searching and sorting] Question: Why do we need to think (about correctness) all the time? [Example: traffic lights] Question: Why do we focus on problem solving? [Exampl: the matches game] 2004/2005: CS211