16.01.2015 Views

CS2013-final-report

CS2013-final-report

CS2013-final-report

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

◦ Comparison of results for small and large data sets<br />

◦ Introduction of tight-bound analysis (Big-θ)<br />

• Elements of Java programming<br />

◦ Basic syntax and semantics<br />

◦ Interfaces and classes<br />

◦ Exceptions<br />

◦ Strings<br />

◦ Arrays, ArrayLists, vectors<br />

◦ Comparators; sorting<br />

◦ Generics<br />

◦ Java type system<br />

◦ Iterators<br />

◦ Introduction to the Java class library<br />

• An integrated development environment (IDE) (e.g., Eclipse)<br />

Course textbooks, materials, and assignments<br />

The main textbook is Mark Allen Weiss, Data Structures and Problem Solving Using Java, Fourth Edition,<br />

Addison-Wesley, 2009. ISBN: 0-321-54040-5. This is supplemented by numerous on-line readings. In-class<br />

work involves an equal mix of lecture and lab-based activities. Students work collaboratively in pairs on the 23<br />

required labs. Students also work individually on several programming assignments and on tests.<br />

Body of Knowledge coverage<br />

KA Knowledge Unit Topics Covered Hours<br />

AL Basic Analysis Knowledge Unit covered in full; additional material in 5<br />

later Analysis of Algorithms course<br />

AL Algorithmic Strategies Divide and conquer ; much more in later Analysis of 1<br />

Algorithms course<br />

AL Fundamental Data<br />

Additional sorting, trees, analysis of algorithms; 8<br />

Structures and Algorithms searching and sorting done in earlier course; graphs in<br />

later Analysis of Algorithms course<br />

CN Fundamentals Several examples, problems, and assignments utilize 1<br />

modeling and simulation; Math/Stat Dept. offers a full<br />

course in Modeling<br />

PL Object-Oriented<br />

Knowledge Unit covered in full 10<br />

Programming<br />

PL Type Systems Supplement to discussion in earlier courses to cover 2<br />

Knowledge Unit in full; additional material in later<br />

Programming Language Concepts course<br />

PL Language Translation and Automatic vs. manual memory management, garbage 0<br />

Execution<br />

collection<br />

SDF Algorithms and Design Comparison of iterative and recursive strategies 3<br />

SDF Fundamental Programming Simple I/O, iteration over structures (e.g., arrays) 2<br />

Concepts<br />

SDF Fundamental Structures Stacks, queues, priority queues, sets, references and 5<br />

aliasing, choosing data structures covered in objectoriented<br />

context<br />

SDF Development Methods Program correctness, defensive programming,<br />

exceptions, code reviews, test-case generation, pre- and<br />

post-conditions, modern programming environments,<br />

library APIs, debugging, documentation, program style<br />

6<br />

- 461 -

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!