Learning Outcomes
At the end of this lecture, you’ll be able to:
- Explain and trace the core operations of List ADT.
- Describe the difference between similar operations (e.g. front vs. removeFront).
- Describe the role of Position abstraction.
- Explain how Position is different from the Node (inner) class.
- Implement the core operations of List efficiently.
- Analyze the time/space efficiency of alternative implementation approaches (e.g. array vs linked structure).
- Explain the advantages of using sentinel node-based implementation.
Lecture Plan
In this lecture, we'll cover the following lessons:
- The List ADT: Generic Positional List Abstraction
- Position ADT: Generic Position Interface.
- Position ADT: Position Exception
- Position ADT: Node is-a Position!
- Position and Node: The convert method!
- List ADT: Efficient Implementation⚡
- List Operations: Insert Front⚡
- Linked List: Using Sentinel Nodes⚡
- LinkedList⚡
Lessons marked with ⚡ contain exercise/activity.