Skip to content

ndibbern/CMSI281-Fall.2017

Repository files navigation

CMSI281-Fall.2017

Data Structures

CMSI 281 is a 3-Unit intermediate-level programming class that teaches students how to craft efficient and space-conscientious applications by analyzing and then choosing the "right" data organization for a task. Although Java is the course's language of focus, students will learn core concepts that permeate all programming languages.

Learning Outcomes

By the course's end, students will:

  • understand analytic programming concepts such as asymptotics, time-complexity, and space-complexity -- that not all programs are created equal; two programs that perform the same task may not do so with the same efficiency or cleanliness.

  • be introduced to a wide range of Abstract Data Types (ADTs) and learn which are best suited for which tasks, including: arrays, linked lists, stacks, queues, heaps, hash tables, sets, trees, and graphs.

  • gain a deeper understanding of class hierarchies, classes vs. objects, and implementing ADTs in concrete classes.

  • learn the interfaces for popular Java collections, and how to use them in a variety of non-trivial programming tasks.

  • identify beneficial and detrimental interactions between ADTs and algorithms that operate on them.

About

LMU Data Structures

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages