CS
112 Intro. to Data Structures
"Bad programmers worry about the code.
Good programmers worry about data structures and their relationships."
- Linus Torvalds, creator of Linux
Welcome to the second-semester computing course at
Calvin University!
This course will equip you with new skills
that you can use to solve computational problems
more efficiently.
|
The materials for this course are available via the links below:
|
|
Prerequisites:
This course assumes you are are already comfortable writing computer programs that:
- use built-in data types to create variables that store
integers, reals, chars, strings, arrays/lists, etc.
- use selection and/or repetition to control program execution.
- use and create object-oriented abstractions:
- classes to represent new data types, and
- methods/functions (with parameters) as operations on those types.
Course Outcomes.
Students successfully completing this course will
demonstrate that they can:
-
Use indirection (pointers) and run-time memory allocation
to implement dynamic, generic container classes
(e.g., vectors, lists, stacks, queues, trees, etc.).
-
Analyze, categorize, and compare
the complexity of data structure operations
using "big-oh" notation.
-
Design and implement recursive data structure operations.
-
Design, create, and use unit-tests to test the correctness of
data structure operations.
-
For select algorithms, use simple parallel computing techniques
to improve algorithm performance and measure the improvement.
For course evaluations, please reference the following activities/practices:
-
Lectures (videos)
-
Lab exercises/sessions
-
Programming projects
-
In-person classroom sessions
-
Textbook
Calvin >
CS >
112
This page maintained by
Joel Adams.