jypi
ExploreChatWays to LearnAbout

jypi

  • About Us
  • Our Mission
  • Team
  • Careers

Resources

  • Ways to Learn
  • Blog
  • Help Center
  • Community Guidelines
  • Contributor Guide

Legal

  • Terms of Service
  • Privacy Policy
  • Cookie Policy
  • Content Policy

Connect

  • Twitter
  • Discord
  • Instagram
  • Contact Us
jypi

© 2026 jypi. All rights reserved.

📊 Data & Tech Skills

JavaScript Algorithms and Data Structures

Master core algorithms and data structures using modern JavaScript. This course starts with JavaScript essentials for al...

424
Views
JavaScript Algorithms and Data Structures

Sections

1. JavaScript Foundations for Algorithmic Programming
13 views

Establish a JS toolkit tailored for writing correct, fast, and readable algorithmic code.

15 topics (15 versions)
1.1Numbers and precision
2
1.2BigInt essentials
1.3Strings in JS
1
1.4Arrays and methods
1
1.5Typed arrays
1
1.6Objects vs Maps
1
1.7Sets and WeakSets
1
1.8Functions and closures
1.9Arrow vs function
1
1.10Loops and iteration
1
1.11for...of vs for...in
1.12Destructuring and spread
1
1.13Immutability basics
1
1.14Performance tips
1
1.15Debugging and testing
1

2. Complexity Analysis and Performance
16 views

Measure and reason about time and space to guide design choices.

15 topics (15 versions)
2.1Time complexity
2
2.2Space complexity
1
2.3Big-O notation
1
2.4Big-Theta
1
2.5Big-Omega
1
2.6Common growth rates
1
2.7Amortized analysis
1
2.8Recursion trees
1
2.9Master theorem
1
2.10Best/avg/worst cases
1
2.11Memory model basics
1
2.12Tail recursion limits
1
2.13console.time profiling
1
2.14Input constraints reading
1
2.15Time–space trade-offs
1

3. Mathematical Foundations for Algorithms
14 views

Build the math toolkit required for correctness and efficiency.

15 topics (15 versions)
3.1Logarithms
1
3.2Exponents
1
3.3Modular arithmetic
1
3.4GCD and LCM
1
3.5Prime numbers
1
3.6Combinatorics basics
1
3.7Binomial coefficients
1
3.8Probability basics
3.9Expected value
1
3.10Random number generation
1
3.11Floating-point pitfalls
1
3.12Overflow and BigInt
1
3.13Coordinate geometry basics
1
3.14Bitwise arithmetic
1
3.15Sums and series
1

4. Arrays and Strings: Core Techniques
15 views

Solve linear-structure problems with efficient traversal and windowing patterns.

15 topics (15 versions)
4.1Traversal patterns
2
4.2Two pointers (opposite ends)
1
4.3Two pointers (same direction)
1
4.4Fast–slow pointers
1
4.5Sliding window (fixed)
1
4.6Sliding window (dynamic)
1
4.7Prefix sums
4.8Difference arrays
1
4.9In-place modification
1
4.10Deduplicate sorted array
1
4.11Rotation and reversal
1
4.12String building performance
1
4.13Substring search basics
1
4.14Run-length encoding
1
4.15Frequency counting
1

5. Hash Tables and Sets
14 views

Use hashing to achieve near-constant-time lookups, counting, and membership.

15 topics (15 versions)
5.1Map vs Object
2
5.2Set vs Array
1
5.3Custom hashing concepts
1
5.4Collision resolution basics
1
5.5Frequency maps
1
5.6Group anagrams
5.7Two-sum variants
1
5.8Subarray sum equals k
1
5.9Longest unique substring
1
5.10Caching with Map
1
5.11Ordered maps via arrays
1
5.12Duplicate detection
1
5.13Counting distinct elements
5.14Memoization tables
1
5.15Set operations
1

6. Linked Lists
3 views

Manipulate pointer-based sequences for flexible insertions and advanced patterns.

15 topics (15 versions)
6.1Node class design
1
6.2Singly list operations
6.3Doubly list operations
6.4Circular lists
1
6.5Insert and delete
6.6Reverse iterative
6.7Reverse recursive
1
6.8Merge two lists
6.9Add two numbers
6.10Cycle detection (Floyd)
6.11Find cycle start
6.12Reorder list
6.13Partition list
6.14LRU cache (list+map)
6.15Skip list overview

7. Stacks and Queues
8 views

Apply LIFO and FIFO structures to parsing, scheduling, and window problems.

15 topics (15 versions)
7.1Stack via array
1
7.2Queue via array
1
7.3Deque design
7.4Min/Max stack
7.5Monotonic stack (inc)
1
7.6Monotonic stack (dec)
1
7.7Next greater element
7.8Daily temperatures
7.9Queue via two stacks
7.10BFS template
1
7.11Parentheses problems
7.12Evaluate RPN
1
7.13Largest rectangle histogram
7.14Sliding window max (deque)
1
7.15Rate limiter queue
1

8. Trees and Tries
10 views

Work with hierarchical data, traversals, search properties, and prefix structures.

15 topics (15 versions)
8.1Tree node design
8.2Preorder traversal
8.3Inorder traversal
1
8.4Postorder traversal
1
8.5Level-order BFS
8.6Recursive vs iterative
1
8.7BST insert/search/delete
1
8.8Validate BST
1
8.9Lowest common ancestor
8.10Tree diameter
1
8.11Serialize/deserialize
8.12Build from traversals
1
8.13Path sum variants
1
8.14Trie basics
1
8.15Trie applications
1

9. Heaps and Priority Queues
13 views

Leverage heap structures for ordering, selection, and scheduling problems.

15 topics (15 versions)
9.1Binary heap array
2
9.2Heapify methods
9.3Push and pop
9.4Heap sort
1
9.5Kth largest element
1
9.6Top-K frequent
1
9.7Running median
1
9.8D-ary heap idea
9.9Min-heap vs max-heap
1
9.10Comparator priority queue
1
9.11Task scheduling
1
9.12Merge k sorted lists
1
9.13Sliding window median
1
9.14Indexed heap concept
1
9.15Heap vs BST trade-offs
1

10. Graphs: Representation and Traversal
12 views

Model networks and explore them safely and efficiently.

15 topics (15 versions)
10.1Adjacency list vs matrix
2
10.2Depth-first search
1
10.3Breadth-first search
1
10.4Detect cycles (directed)
10.5Detect cycles (undirected)
1
10.6Topological sort (Kahn)
10.7Topological sort (DFS)
1
10.8Dijkstra shortest paths
1
10.9Bellman–Ford
1
10.10BFS on unweighted graphs
10.11MST Kruskal
1
10.12MST Prim
1
10.13SCC Kosaraju
1
10.14Union–Find on graphs
1
10.15Bipartite checking

11. Sorting and Searching
0 views

Master ordering and lookup techniques with real-world constraints.

15 topics (15 versions)
11.1Stable vs unstable
11.2Selection sort
11.3Insertion sort
11.4Merge sort
11.5Quicksort (Lomuto)
11.6Quicksort (Hoare)
11.7Counting sort
11.8Radix sort
11.9Bucket sort
11.10Binary search template
11.11Binary search variants
11.12Search rotated array
11.13Lower/upper bound
11.14Quickselect
11.15External sorting basics

12. Recursion and Backtracking
15 views

Systematically explore solution spaces with pruning and state management.

15 topics (15 versions)
12.1Recursion patterns
2
12.2Base and inductive steps
1
12.3Generate permutations
1
12.4Generate combinations
1
12.5Subsets (power set)
1
12.6N-Queens
1
12.7Sudoku solver
1
12.8Word search on grid
1
12.9Telephone keypad
12.10Palindrome partitioning
1
12.11Restore IP addresses
1
12.12Pruning strategies
1
12.13Ordering and duplicates
1
12.14State representation
1
12.15Recursion vs iteration
1

13. Dynamic Programming
1 views

Turn exponential searches into polynomial-time with structured subproblems.

15 topics (15 versions)
13.1DP patterns overview
1
13.21D DP basics
13.32D DP grids
13.40/1 knapsack
13.5Unbounded knapsack
13.6Coin change
13.7Longest increasing subsequence
13.8Longest common subsequence
13.9Edit distance
13.10Matrix chain multiplication
13.11Partition equal subset sum
13.12House robber variants
13.13DP on trees
13.14Bitmask DP
13.15State compression

14. Greedy Algorithms
15 views

Design locally optimal steps that lead to global optima when valid.

15 topics (15 versions)
14.1Greedy-choice property
2
14.2Exchange argument
1
14.3Activity selection
1
14.4Interval scheduling
1
14.5Interval partitioning
1
14.6Meeting rooms
1
14.7Gas station circuit
14.8Jump game greedy
1
14.9Huffman coding
1
14.10Kruskal as greedy
1
14.11Fractional knapsack
1
14.12Scheduling with deadlines
1
14.13Remove k digits
1
14.14Canonical coin systems
1
14.15Local vs global optima
1

15. Advanced Patterns and JS-Specific Considerations
2 views

Explore specialized algorithms, memory considerations, and JS runtime limits.

15 topics (15 versions)
15.1Union–Find (Disjoint Set)
15.2KMP string matching
15.3Rabin–Karp hashing
15.4Manacher palindrome
15.5Suffix array overview
15.6Bloom filter concept
15.7Rolling hash pitfalls
15.8Bit tricks and masks
1
15.9Randomization and shuffle
15.10Reservoir sampling
15.11Line sweep geometry
15.12Trie vs suffix tree
15.13Memory usage in V8
15.14Tail calls and stack depth
1
15.15Typed arrays and buffers
Earn your certificate

Sign in to track your progress

When you’re signed in, we’ll remember which sections you’ve viewed. Finish all sections and you’ll unlock a downloadable certificate to keep or share.