0% found this document useful (0 votes)
5 views3 pages

Styled Algorithm Learning Path

The document outlines a six-week mastery plan for algorithm efficiency and time complexity, focusing on various topics each week. Key areas include Big-O notation, sorting algorithms, searching techniques, recursion, dynamic programming, greedy algorithms, and advanced graph concepts. Each week includes specific objectives, study materials, practice problems, and a goal for the number of problems to solve.

Uploaded by

Oscar López
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views3 pages

Styled Algorithm Learning Path

The document outlines a six-week mastery plan for algorithm efficiency and time complexity, focusing on various topics each week. Key areas include Big-O notation, sorting algorithms, searching techniques, recursion, dynamic programming, greedy algorithms, and advanced graph concepts. Each week includes specific objectives, study materials, practice problems, and a goal for the number of problems to solve.

Uploaded by

Oscar López
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

Algorithm Efficiency & Time Complexity Mastery Plan

WEEK 1: Big-O & Sorting Algorithms

Objectives:

- Understand time and space complexity (Big-O)

- Learn and implement sorting algorithms

- Analyze time complexity of different sorts

Study:

- Big-O Notation: O(1), O(log n), O(n), O(n log n), O(n), O(2)

- Merge Sort, Quick Sort, Heap Sort, Counting Sort

Practice:

- LeetCode: Sort an Array

- Implement merge sort and quick sort from scratch

- Determine time complexity for small Python functions

Goal: 510 problems

WEEK 2: Searching & Recursion/Backtracking

Objectives:

- Master binary search and search space techniques

- Learn backtracking structure and pruning

- Solve recursive problems effectively

Study:

- Binary Search, Search in Rotated Array, Peak Element

- Backtracking: Subsets, Permutations, N-Queens

Practice:

- LeetCode: Binary Search, Subsets, Letter Combinations

- Identify time complexity of recursive solutions


Algorithm Efficiency & Time Complexity Mastery Plan

Goal: 10 problems

WEEK 3: Sliding Window & Two Pointers

Objectives:

- Optimize nested loops to linear time using windowing

- Solve substring, array, and trapping water problems

Study:

- Fixed/variable sliding window, left-right pointers

Practice:

- LeetCode: Longest Substring Without Repeating Characters

- Minimum Window Substring, Trapping Rain Water

Goal: 10 problems

WEEK 4: Dynamic Programming (DP)

Objectives:

- Transition from brute-force recursion to DP

- Solve overlapping subproblem problems efficiently

Study:

- Fibonacci, LIS, LCS, Knapsack, Matrix DP

Practice:

- LeetCode: House Robber, Coin Change, Unique Paths

- Practice tabulation and memoization approaches

Goal: 1015 problems

WEEK 5: Greedy & Graph Basics

Objectives:
Algorithm Efficiency & Time Complexity Mastery Plan

- Use greedy strategy where local optimum = global optimum

- Learn BFS/DFS, connected components

Study:

- Activity Selection, Jump Game

- BFS/DFS for Matrix and Adjacency Lists

Practice:

- LeetCode: Jump Game, Merge Intervals, Number of Islands

- Implement BFS/DFS on graphs

Goal: 10 problems

WEEK 6: Advanced Graphs, Bit Manipulation, Tries

Objectives:

- Solve shortest path, Union-Find, and Trie problems

- Master bit-level problem-solving

Study:

- Dijkstras, Union-Find, Bitmask DP, Prefix Sum, Tries

Practice:

- LeetCode: Course Schedule, Maximum XOR, Single Number

Goal: 1015 problems

You might also like