Skip to main content
grasp.study
About
Explore
Pricing
Log in
Try it for free
Back to course
👋
Welcome to a Grasp lesson
Create a free account
to keep studying and create your own study path.
Comprehensive software engineering curriculum
·
Module 1
Data Structures & Algorithmic Analysis
1
Understanding Asymptotic Notation: Big-O, Big-Theta, and Big-Omega
Define Big-O, Big-Theta, and Big-Omega notations and use them to classify algorithm performance.
2
Algorithm Time Complexity Analysis
Analyze the time complexity of iterative and recursive algorithms (including the Master Theorem).
3
Dynamic Arrays: Implementation and Amortized Analysis
Implement dynamic arrays and analyze their amortized time complexity.
4
Linked Lists vs. Arrays: Implementation and Trade-offs
Implement a linked list (singly or doubly) and analyze the trade-offs versus an array.
5
Stack and Queue Implementation: Array vs. Linked-List Trade-offs
Implement a stack and queue, analyzing the trade-offs of array vs. linked-list backing.
6
Stack Applications: LIFO Problem Solving
Apply a stack to solve a problem requiring LIFO behavior (e.g., balanced parentheses).
7
Queues for FIFO Problem Solving
Apply a queue to solve a problem requiring FIFO behavior (e.g., resource sharing).
8
Space Complexity & Memory Trade-offs
Analyze the space complexity of algorithms and identify memory trade-offs.
Previous module
Next module
Hashing, Trees, and Search