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

Mastering Algorithm Efficiency & Complexity

The document outlines a six-week mastery plan for algorithm efficiency and time complexity, focusing on various topics each week such as Big-O notation, sorting algorithms, searching techniques, dynamic programming, and graph basics. Each week includes objectives, study materials, practice problems from LeetCode, and specific goals for the number of problems to solve. The plan emphasizes understanding and implementing key algorithms while analyzing their time complexities.

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)
4 views3 pages

Mastering Algorithm Efficiency & Complexity

The document outlines a six-week mastery plan for algorithm efficiency and time complexity, focusing on various topics each week such as Big-O notation, sorting algorithms, searching techniques, dynamic programming, and graph basics. Each week includes objectives, study materials, practice problems from LeetCode, and specific goals for the number of problems to solve. The plan emphasizes understanding and implementing key algorithms while analyzing their time complexities.

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

Algorithm Efficiency & Time Complexity Mastery Plan

WEEK 1: Big-O & Sorting Algorithms

[OK] Objectives:

- Understand time and space complexity (Big-O)

- Learn and implement sorting algorithms

- Analyze time complexity of different sorts

[STUDY] 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

[DO] Practice:

- LeetCode: Sort an Array

- Implement merge sort and quick sort from scratch

- Determine time complexity for small Python functions

[GOAL] Goal: 510 problems

WEEK 2: Searching & Recursion/Backtracking

[OK] Objectives:

- Master binary search and search space techniques

- Learn backtracking structure and pruning

- Solve recursive problems effectively

[STUDY] Study:

- Binary Search, Search in Rotated Array, Peak Element

- Backtracking: Subsets, Permutations, N-Queens

[DO] Practice:

- LeetCode: Binary Search, Subsets, Letter Combinations

- Identify time complexity of recursive solutions


Algorithm Efficiency & Time Complexity Mastery Plan

[GOAL] Goal: 10 problems

WEEK 3: Sliding Window & Two Pointers

[OK] Objectives:

- Optimize nested loops to linear time using windowing

- Solve substring, array, and trapping water problems

[STUDY] Study:

- Fixed/variable sliding window, left-right pointers

[DO] Practice:

- LeetCode: Longest Substring Without Repeating Characters

- Minimum Window Substring, Trapping Rain Water

[GOAL] Goal: 10 problems

WEEK 4: Dynamic Programming (DP)

[OK] Objectives:

- Transition from brute-force recursion to DP

- Solve overlapping subproblem problems efficiently

[STUDY] Study:

- Fibonacci, LIS, LCS, Knapsack, Matrix DP

[DO] Practice:

- LeetCode: House Robber, Coin Change, Unique Paths

- Practice tabulation and memoization approaches

[GOAL] Goal: 1015 problems

WEEK 5: Greedy & Graph Basics

[OK] Objectives:
Algorithm Efficiency & Time Complexity Mastery Plan

- Use greedy strategy where local optimum = global optimum

- Learn BFS/DFS, connected components

[STUDY] Study:

- Activity Selection, Jump Game

- BFS/DFS for Matrix and Adjacency Lists

[DO] Practice:

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

- Implement BFS/DFS on graphs

[GOAL] Goal: 10 problems

WEEK 6: Advanced Graphs, Bit Manipulation, Tries

[OK] Objectives:

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

- Master bit-level problem-solving

[STUDY] Study:

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

[DO] Practice:

- LeetCode: Course Schedule, Maximum XOR, Single Number

[GOAL] Goal: 1015 problems

You might also like