2 - Lists and Arrays: Structure and Introduction to Big O Notation — Topics & Learning Outcomes

📋 Module Topics🎯 Student Learning Outcomes📚 Materials for Each Topic

Module Topics

1. Introduction to Lists and Arrays

Introduces lists and arrays as fundamental data structures, covering their definitions, characteristics, and how they are used to store and organize data.

Materials for topic 1 (2)

2. Array Structure and Memory Layout

Explores how arrays are structured in memory, including indexing, fixed sizing, and how elements are stored contiguously to enable efficient access.

Materials for topic 2 (2)

3. List Structure and Dynamic Behavior

Examines how lists differ from arrays in their dynamic nature, covering variable sizing, element management, and the flexibility they offer for data storage.

Materials for topic 3 (2)

4. Core Data Operations on Lists and Arrays

Covers the fundamental operations performed on lists and arrays such as insertion, deletion, access, and search, establishing a basis for evaluating their efficiency.

Materials for topic 4 (2)

5. Introduction to Computational Complexity

Introduces the concept of computational complexity, explaining why measuring the efficiency of algorithms and data operations matters as input sizes grow.

Materials for topic 5 (2)

6. Big O Notation Fundamentals

Explains Big O notation as a standardized way to express algorithmic efficiency, covering common complexity classes such as O(1), O(n), and O(n²) with clear examples.

Materials for topic 6 (2)

7. Applying Big O to List and Array Operations

Applies Big O notation to the core operations of lists and arrays, enabling students to reason about and compare the relative efficiency of different data structure choices.

Materials for topic 7 (2)

Student Learning Outcomes

By the end of this module, students will be able to:

MO1
Distinguish between arrays and lists by comparing their memory layout, sizing behavior, and structural characteristics
Level: AnalyzeType: CognitiveCourse mapping: CO1
MO2
Describe the core data operations — access, search, insertion, and deletion — as performed on lists and arrays, including how operation cost varies by position
Level: RememberType: CognitiveCourse mapping: CO1
MO3
Classify the time complexity of list and array operations using Big O notation, identifying O(1), O(n), and O(n²) complexity classes with appropriate examples
Level: ApplyType: CognitiveCourse mapping: CO4
MO4
Evaluate the efficiency trade-offs between list and array operations by applying Big O analysis to justify data structure choices for a given use case
Level: EvaluateType: CognitiveCourse mapping: CO2

Course Outcomes (reference)

CO1Describe both complex and simple data structures.
CO2Select the correct data structure and algorithm to solve specific problems
CO3Implement data structures and algorithms in computer code.
CO4Analyze the performance of algorithms and data structures

Materials for Each Topic

What has been made for each topic. Materials that cover the whole module are listed on the module page.

1. Introduction to Lists and Arrays

↑ Back to topic 1

2. Array Structure and Memory Layout

↑ Back to topic 2

3. List Structure and Dynamic Behavior

↑ Back to topic 3

4. Core Data Operations on Lists and Arrays

↑ Back to topic 4

5. Introduction to Computational Complexity

↑ Back to topic 5

6. Big O Notation Fundamentals

↑ Back to topic 6

7. Applying Big O to List and Array Operations

↑ Back to topic 7