Module: Lists

Introduction to the List Abstract Data Type.

Learning Outcomes

Learn about and implement the List data structure

The student will:

Learn about and implement the Java Iterator and Iterable interfaces

The student will:

Understand Java collection classes and the basics of memory management

The student will:

Readings

Experiential Learning

Assessments

Q07: List ADT

Quiz 10 Sep 12:00 AM

Outcomes assessed: Learn about and implement the List data structure, Learn about and understand the Array data structure., Learn the basics and uses of algorithm analysis, including big-O notation

This assessment will verify that students understand the basics of the List Abstract Data Type.

Q08: ArrayList

Quiz 12 Sep 12:00 AM

Outcomes assessed: Learn about and implement the List data structure, Learn about and understand the Array data structure., Learn the basics and uses of algorithm analysis, including big-O notation

This assessment will verify that students understand the basics of ArrayList implementation of the List interface.

H04: Sortable Beer List (Array implementation)

Assignment

Outcomes assessed: Learn about the Java programming language, Use standard libraries or packages as well as advanced object-oriented programming techniques, Learn about and implement the List data structure, Learn about and understand the Array data structure., Learn the basics and uses of algorithm analysis, including big-O notation, Learn about and implement standard algorithms for sorting arrays, Be exposed to software engineering techniques, Be exposed to software testing techniques

This assessment will verify that students understand the basics of ArrayList implementation of the List interface, Big-O notation and Quadratic Sorting Algorithms.

Q09: LinkedList

Quiz 17 Sep 12:00 AM

Outcomes assessed: Learn about and implement the List data structure, Learn about and implement the Java Iterator and Iterable interfaces, Learn the basics and uses of algorithm analysis, including big-O notation

This assessment will verify that students understand the basics of LinkedList implementation of the List interface.

Q10: LinkedList

Quiz 19 Sep 12:00 AM

Outcomes assessed: Learn about and implement the List data structure, Learn about and implement the Java Iterator and Iterable interfaces, Learn the basics and uses of algorithm analysis, including big-O notation

This assessment will verify that students understand the basics of LinkedList implementation of the List interface.

H05: Sortable Beer List (Doubly linked implementation)

Assignment

Outcomes assessed: Learn about the Java programming language, Use standard libraries or packages as well as advanced object-oriented programming techniques, Learn about and implement the List data structure, Learn the basics and uses of algorithm analysis, including big-O notation, Learn about and implement standard algorithms for sorting arrays, Be exposed to software engineering techniques, Be exposed to software testing techniques

This assessment will verify that students understand the basics of Doubly Linked List implementation of the List interface, Big-O notation and Quadratic Sorting Algorithms.

Q11: List Iterators

Quiz 24 Sep 12:00 AM

Outcomes assessed: Learn about and implement the List data structure, Learn about and implement the Java Iterator and Iterable interfaces, Learn the basics and uses of algorithm analysis, including big-O notation

This assessment will verify that students understand the basics of Iterators in lists.

Q12: Iterators

Quiz 26 Sep 12:00 AM

Outcomes assessed: Learn about and implement the List data structure, Learn about and implement the Java Iterator and Iterable interfaces, Learn the basics and uses of algorithm analysis, including big-O notation

This assessment will verify that students understand the basics of Iterators in lists.

H06: Iterating over Beer Flights

Assignment

Outcomes assessed: Learn about and implement the List data structure, Learn about and implement the Java Iterator and Iterable interfaces, Learn about the Java programming language, Use standard libraries or packages as well as advanced object-oriented programming techniques, Be exposed to software engineering techniques, Be exposed to software testing techniques

This assessment will verify that students understand the basics of List Iterators both in an ArrayList and a Doubly Linked List implementation of the List interface.