Halo Section Background

Data Structures Advance

Learn Trees and Graphs, the backbone of advanced data structures! Dive into theoretical concepts with in-depth video lectures and practice competitive programming assignments to solidify your understanding.

What you'll learn

  • Introduction to Trees and Graphs

  • Tree Properties: Height and Depth

  • Binary Trees and Tree Traversals

  • Pre-Order, Post-Order, and In-Order Traversals

  • Searching on Trees: BFS and DFS

  • Operations on Trees: Insertion and Deletion

  • Time Complexity of Tree Operations

  • Applications of Trees in Game Development

  • Graph Concepts: Edges, Vertices, and Paths

  • Directed, Undirected, and Weighted Graphs

  • BFS and DFS on Graphs

  • Pathfinding Algorithms in Graphs

  • Applications and Advantages of Graphs

Requirements

  • Basic understanding of programming concepts.

  • Hands-On practice and proficiency in Arrays, Link List, Stack, Queues

  • Familiarity with arrays, loops, and recursion.

  • Interest in learning advanced data structures for problem-solving.

  • A system with at least 4 GB RAM and access to coding tools.

About This Course

In this theoretical course, you’ll learn how to work with Trees and Graphs, two foundational data structures in computer science. Through in-depth video lectures, you’ll start with Trees, exploring their structure, properties, and operations such as insertion, deletion, and traversals (Pre-Order, Post-Order, and In-Order). You’ll also learn searching techniques like BFS and DFS, their time complexity, and their applications in game development.

Next, you’ll move on to **Graphs**, learning key concepts like **edges**, **vertices**, **paths**, and how they’re used in both directed and undirected graphs. You’ll explore **weighted graphs**, as well as BFS and DFS traversal methods, culminating in understanding **pathfinding algorithms** and their relevance to game mechanics. With a mix of theory and competitive programming assignments, this course equips you with the knowledge to tackle advanced data structure problems with confidence and efficiency.

Show More

Curriculum

Recursion & Fibonacci Series

Preview

Fibonacci Using Iteration

Fibonacci Using Recursion

Factorial of N

Sort Stack Using Recursion

Print Pattern Without Any Loop or Extra Variable (Bonus)

Sum of Digits (Bonus)

Memoization

Nth Fibonacci Number Using Recursion And Memoization

Sum of N Natural Numbers

Count ways to reach the n’th stair

Permutations (Bonus)

Unique Permutation (Bonus)

The Power Set (Bonus)

Combinations (Bonus)

n-queens (Bonus)

Recursion Problems for Practice

Recursion Quiz

Insertion, Bubble & Selection Sort

Insertion Sort

Selection Sort

Bubble Sort

Print Array (Bonus)

Number of Swaps (Bonus)

Difference between max and min sum. (Bonus)

Sort Array In O(n*k) time (Bonus)

Problems based on Sorting

Merge Two Sorted Arrays

Merge Two Sorted Linked List

Even Odd (Bonus)

Squares of Sorted Array (Bonus)

Majority Element (Bonus)

Quick Sort

QuickSort For 1-D Array

Quick Sort To Sort Singly Linked List

Quick Sort To Sort Doubly Linked List

Quick Vs Merge Sort

Prom Night (Bonus)

Find The Next (Bonus)

Quick Sort (Bonus)

Merge Sort

Merge Sort

Merge Sort To Sort Singly Linked List

Merge Sort To Sort Doubly Linked List(Bonus)

XOR (Bonus)

Count Inversion In Array (Bonus)

Merge Sort (Bonus)

Single Element In a Sorted Array (Bonus)

Maximum of (A[i] - 1) * (A[j] - 1) (Bonus)

Sorting Problems for Practice

Sorting Quiz

Searching (Array & Linked List)

Linear Search For 1-D Array

Linear Search For Linked List

Lucky Rectangles (Bonus)

Maximum Sum (Bonus)

Counting Frog Paths (Bonus)

Single Non-Empty Segment (Bonus)

Square Transaction (Bonus)

Binary Search

Binary Search Iterative

Binary Search Recursive

Lower Bound (Bonus)

Upper Bound (Bonus)

Median of Two Sorted Array (Bonus)

Search a 2D Matrix (Bonus)

Search Insert Position (Bonus)

Longest Increasing Subsequence (Bonus)

Valid Perfect Square (Bonus)

Arranging Coins (Bonus)

Searching Problems for Practice

Searching Quiz

Hash Maps

Hash Function

Hash Function(Collision)

Encoding and Decoding of String

STL Maps

Map

Design Hash Map (Bonus)

Query Processing

Minimum delete operations (Bonus)

Sum of Unique Elements (Bonus)

Count Largest Group (Bonus)

Find Missing in Second Array (Bonus)

Problems on Hash Maps

LRU cache

LFU cache

Two Pairs (Bonus)

Max Distance Between 2 Occurrences (Bonus)

Check if Array Contains Duplicates (Bonus)

Common Elements Present In All Rows (Bonus)

N/3 repeated number in an array(Bonus)

STL Sets[Bonus]

Hash Maps Problems for Practice

Hashmaps Quiz

Heap Data Structure

Max Heap

Min Heap

Sort a nearly sorted (or K sorted) array

Median of Stream of Running Integers (Bonus)

Largest Triplet Product in a Stream (Bonus)

K-th Largest Sum Contiguous Subarray (Bonus)

Representation of Graphs

Adjacency List

Adjacency Matrix

Degree of Vertex (Bonus)

Degree of Vertex II (Bonus)

In and Out Degree of Each Vertex (Bonus)

Graph Traversals

BFS Algorithm

DFS Algorithm

Minimum number of operation required to convert number x into y (Bonus)

01 Matrix (Bonus)

Max Area of Island (Bonus)

Minimum Number of Days to Eat N Oranges (Bonus)

Jump Game III (Bonus)

Searching(BST, Tree, Graph)

Greedy Introduction

Job Scheduling

Optimal Merge Pattern

Huffman Coding

Activity Selection Problem (Bonus)

Minimum Number of Platforms Required for a Railway/Bus Station (Bonus)

Connect n ropes with minimum cost (Bonus)

Dynamic Programming

Dynamic Programming Problems for Practice

Dynamic Programming Quiz

Instructor

Mayank Grover

Founder, Teacher @ Outscal | EA, Kixeye, DeNA, Junglee, D.E. Shaw

Why you should learn from me:

  • Over 10 years of experience building games for major companies like EA, Junglee, DeNA.
  • Founder of Outscal, a thriving 9000+ member community dedicated to game development and career growth.
  • Proven track record of mentoring developers, with a focus on practical, career-accelerating skills.


Mentors on the Platform

Besides our in-house game devs, we have mentors and experts on our platform who have worked at AAA studios, contributed to popular titles, and even built their indie studios, bringing real-world insights into every project.
logo-334
Muhammad Hamza

Game Developer

Ubisoft

London, England

    logo-335
    Donovan Rennaker

    Video Game Engineer

    Babaroga

    Indiana, United States

      logo-337
      Hardik Dubal

      Associate Technical Director

      EA (Electronic Arts)

      Hyderabad, India

        logo-333
        Hope Kseniia Gorulev

        Unity Developer

        Kodland

        Barcelona, Spain

          logo-332
          Ketan Shukla

          Senior Gameplay Engineer

          Zynga

          Bengaluru, India

            logo-336
            Animish Gadve

            Game Developer

            Thought Loops Studio

            Goa, India

              logo-336
              Mayank Grover

              Founder and CEO

              Outscal

              India

                logo-330
                Vismay Thaker

                Game Developer 2

                Moonfrog Labs

                Bengaluru, India

                  logo-329
                  Jisan Haider Joy

                  Senior Game Developer

                  Kolibri Games

                  Berlin, Germany


                    Text Lessons: Learn at your own pace with text-based lessons with extra focus

                    Video Lessons: Learn complex topics and tools through video lessons & tutorials

                    Access to Source Code: Compare your code with industry-standard game projects created by experts

                    Assignment: Build your project through structured step-by-step assignments

                    Quizzes: Validate your understanding with regular concept-testing quizzes

                    24*7 Doubt Support: Tag respective help roles in our discord community and get solutions faster


                    Alum Testimonials

                    Outscal alums are currently working in 300+ studios in different parts of the globe. From AAA studios to indie studios, you’ll find our DNA everywhere.
                    Sethunath

                    Sethunath

                    Gameplay Engineer 2

                    The project-oriented approach at Outscal helped me make my portfolio and gave me a boost in getting my resume shortlisted with the studios I applied with.

                    Zynga

                    Sethunath - Gameplay Engineer 2
                    Vinay Kashyap

                    Vinay Kashyap

                    Gameplay Programmer

                    Outscal delivers an unmatched journey into game programming: exceptional instructors, real-world projects, and a supportive community.

                    Ubisoft

                    Vinay Kashyap - Gameplay Programmer
                    Swapnil

                    Swapnil

                    Game Developer

                    Outscal boosted my confidence and taught me how to express my thoughts through game development. I learned everything from fundamentals to advanced of game development here.

                    Voodoo

                    Swapnil - Game Developer
                    Komal Kurundwade

                    Komal Kurundwade

                    Associate Software Engineer

                    ’I was a born genius, education ruined me.’ Outscal helped me rise again like a Phoenix contributing to my career transition from a sketch artist to a game programmer.

                    Light & Wonder

                    Komal Kurundwade - Associate Software Engineer
                    Dhiraj Rajendra Magdum

                    Dhiraj Rajendra Magdum

                    Junior Programmer

                    I did a lot of courses on Udemy and YouTube but Outscal gave me structure & discipline. In 7 months, I learnt skills that take years. They had 15 projects back then and were adding more. Overall a great experience.

                    Sumo Digital

                    Dhiraj Rajendra Magdum - Junior Programmer
                    Flemin Johnson

                    Flemin Johnson

                    Unity Developer

                    In a short span of 6 months, Outscal’s game development course helped me excel in my career and crack into one of the top gaming companies in India.

                    MPL

                    Flemin Johnson - Unity Developer
                    Chinmay Virmani

                    Chinmay Virmani

                    Associate Software Engineer

                    The comprehensive game programming course offered by Outscal exceeded my expectations, highly recommended for aspiring game developers.

                    GSN Games India Private Limited

                    Chinmay Virmani - Associate Software Engineer

                    Project Updates

                    We encourage our clan members to build in public. Posting your progress on platforms like LinkeIin & Twitter holds you accountable and helps you reach the right audience. Imagine recruiters reaching out to you after seeing your daily progress. This is what our clan members have seen happening and its your turn now.

                    KM

                    Kishore M

                    Unity Game Developer

                    Hello World!


                    This is a First-Person Hunter type Game. Developed this project in 4 days for Outscal's MAT assignment.


                    GitHub project link: https://lnkd.in/g4Ci29Gw

                    Playable Game link: https://lnkd.in/gXUHhnKw


                    Design Patterns ☟

                    • Generic Singleton: Created Generic Singleton and made Service script as Singletons from Generic Singleton.
                    • MVC-S: Created Model View Controller for Enemy, Weapon, and Bullet.
                    • Scriptable Objects: Scriptable Object to store all different Enemy, Weapon, and Bullet data.
                    • State-Machine: State Machine for Enemy to do assigned tasks only for that State.

                    Game Functionalities ☟

                    • 3 types of Weapons: Single Pistol, Double Pistol, and Sniper.
                    • 4 types of Enemies for Hunting.
                    • Player can choose their Weapon and Enemy from Lobby.
                    • Player can move into the world freely, but movement speed will be reduced according to Weapon weight.
                    • Enemy will Patrol until Player enters the range.
                    • No health for Player; if the Enemy reaches the Player, they will be Dead.
                    • Different hit areas can reduce different damage for Enemy.
                    • Zoom functionality for Sniper.

                    Clanmates ➾ Tanya Gupta, Vimarsh Sharma, Kunal Khedkar, P D Vivekanand, Pramod Aradhya, Ashwin Rajpurohit, Shakil Hassan, Tarun Rankawat, Rushabh Gohel, Vatsal Maheshwari.


                    Outscal Mentors ➾ Mayank Grover, Malhar Devasthali, Arindam Bharati, Praful Joshi.


                    #outscal #projects #outscalassignments #gamedesign #unity3d #unitygames #gamedev

                    FA

                    Felipe Assis

                    I am a developer specialized in C# and Unity, with considerable knowledge in c++, Unreal, Java, Javascript, Node.Js, Angular and React

                    I’ve started the State Machine Pattern module in the Game Development Advanced course at Outscal! ⚙️

                    The State Machine Pattern is a fundamental approach in game development for managing different system states, such as character animations, AI logic, or game phases.
                    It helps organize and control transitions clearly and efficiently, reducing code complexity.

                    I’m excited to dive deeper into this pattern and see how it can make my projects more robust and scalable!

                    DS

                    Darshan Sahay

                    Jr. Software Engineer

                    Hello everyone,

                    I want to share an update on the project "Home Calling" that I have been working on as a part of Outscal Gamejam.

                    I have created a 3D Hack and Slash game which features 2 playable characters.
                    To create the project, I have used State Behaviors for the enemies and Animation Events for characters.

                    I would like to thank my mentors Mayank Grover and Malhar Devasthali from Outscal for guiding me and helping me in creating the project.
                    I would also like to thank my clanmates who constantly supported me throughout the project.

                    You can download the project from the link below and share your feedback and suggestions, as the project is still in development.


                    Choose Your Plan

                    PRO PLAN

                    $19.99

                    /month

                    Monthly Subscriptions, Cancel Anytime

                    Content For 20+ Game Projects

                    Certificate for each project

                    No Card Required. Pause Anytime.

                    MENTORSHIP PLAN

                    Custom

                    Lifetime Access To All Content

                    Code Reviews

                    1-on-1 Mentorship

                    Placement Support

                    Networking Sessions


                    Projects Included in Pro Plan

                    Learn C# While Creating A Turn Based Battle Game
                    Free·Beginner·Course

                    Learn C# While Creating A Turn Based Battle Game

                    24 Lessons
                    10 Assignments
                    11 Quizzes
                    C#
                    OOPS
                    Free
                    Build Your First Game In Unity - Mr. Blocks
                    Free·Beginner·Course

                    Build Your First Game In Unity - Mr. Blocks

                    56 Lessons
                    4 Assignments
                    13 Quizzes
                    Unity
                    C#
                    Free
                    Create A Text Based RPG In C++ From Scratch
                    Beginner·Course

                    Create A Text Based RPG In C++ From Scratch

                    25 Lessons
                    14 Assignments
                    13 Quizzes
                    C++
                    OOPS
                    Learn OOP In C++ By Building A Text-Based Pokémon Game!
                    Intermediate·Course

                    Learn OOP In C++ By Building A Text-Based Pokémon Game!

                    81 Lessons
                    45 Assignments
                    24 Quizzes
                    C++
                    OOPS
                    Learn Fundamental Concepts Of Unity By Creating A 2D Platformer Game
                    Intermediate·Course

                    Learn Fundamental Concepts Of Unity By Creating A 2D Platformer Game

                    39 Lessons
                    55 Assignments
                    11 Quizzes
                    Unity
                    Physics Simulations
                    Learn SFML And Create The Classic Pong Game
                    Beginner·Course

                    Learn SFML And Create The Classic Pong Game

                    26 Lessons
                    18 Assignments
                    9 Quizzes
                    SFML
                    Learn 1D & 2D Arrays By Building The Classic Game: Minesweeper!
                    Beginner·Course
                    Learn Linked Lists Through Snake Game
                    Beginner·Course

                    Learn Linked Lists Through Snake Game

                    98 Lessons
                    68 Assignments
                    22 Quizzes
                    C++
                    SFML
                    Linked Lists
                    Master Searching Algorithms by creating a Searching Visualizer in SFML
                    Intermediate·Course
                    Master Sorting Algorithms By Building A Sorting Visualizer In SFML
                    Intermediate·Course

                    Master Sorting Algorithms By Building A Sorting Visualizer In SFML

                    43 Lessons
                    14 Assignments
                    6 Quizzes
                    SFML
                    Sorting
                    Learn Architectural Design Patterns While Building Your Own Tower Defense Game!
                    Advanced·Course

                    Learn Architectural Design Patterns While Building Your Own Tower Defense Game!

                    52 Lessons
                    18 Assignments
                    19 Quizzes
                    Unity
                    Design Patterns
                    Implement Player Skins Using MVC (Model-View-Controller)
                    Advanced·Course

                    Implement Player Skins Using MVC (Model-View-Controller)

                    25 Lessons
                    11 Assignments
                    4 Quizzes
                    Unity
                    Design Patterns
                    Learn Observer Pattern And Create A Horror Game From Scratch
                    Advanced·Course

                    Learn Observer Pattern And Create A Horror Game From Scratch

                    55 Lessons
                    22 Assignments
                    24 Quizzes
                    Unity
                    Design Patterns
                    Learn To Implement Object Pools In A Fast-Paced 2D Space Shooter Game
                    Free·Advanced·Course

                    Learn To Implement Object Pools In A Fast-Paced 2D Space Shooter Game

                    39 Lessons
                    15 Assignments
                    18 Quizzes
                    Unity
                    Design Patterns
                    Free
                    Build Undo & Replay Mechanics in Turn-Based Combat with Command Pattern
                    Advanced·Course

                    Build Undo & Replay Mechanics in Turn-Based Combat with Command Pattern

                    37 Lessons
                    18 Assignments
                    13 Quizzes
                    Unity
                    Design Patterns
                    Create Complex Stealth Game AI Using State Machines
                    Advanced·Course

                    Create Complex Stealth Game AI Using State Machines

                    27 Lessons
                    17 Assignments
                    8 Quizzes
                    Unity
                    Design Patterns
                    Hashmap Heist
                    Beginner·Course

                    FAQ?

                    You get full access to our entire library of 20+ game projects covering Unity, C++, Data Structures and Design Patterns. Plus, any future projects added will be included at no extra cost.

                    If you are already enrolled at Outscal in any of these courses: Full Stack Game Developer, Game Development Advance, Game Dev Fast Track, then you already have full access to out content library, no extra subscription is needed.

                    Your progress stays saved. If you renew later, you'll pick up right where you left off.

                    Each project focuses on a specific skillset like Design Patterns, Unity, C++, or data structures and guides you through building a real game while you learn these technical concepts. Hence the name Projects.

                    The Pro plan gives you full access to our entire content library. The Mentorship plan includes everything in Pro plus one-on-one guidance from industry veterans, code reviews, placement prep, and job support.

                    No, all content is text-based or pre-recorded , allowing you to learn at your own pace. If you want one-on-one guidance, you can opt for the Mentorship plan.

                    The core material is text-based. It is engaging text-based format enriched with images, GIFs and videos where helpful. Yet text remains the primary medium.

                    Your subscription payment is deducted at the beginning of each 30-day cycle.

                    Placement support isn’t included in the Pro plan (subscription). It’s part of the Mentorship plan, which also offers one-on-one mentorship with industry veterans, code reviews, and placement preparation.

                    We have a 24/7 Discord community of thousands of game developers who help each other daily. For serious issues, you can directly contact our internal ops team.

                    Yes, as an active subscriber, you’ll have access to any new projects we add, at no extra cost.

                    To easily cancel your subscription, simply send an email to admissions@outscal.com or reach out to your payment provider (PayPal or RazorPay). We're here to help you!

                    We recommend following the sequence displayed on the “Courses” page, which progresses from beginner to advanced levels (top to bottom). Each project includes a difficulty rating, so if you are already confident with the basics, you can use the intermediate or advanced difficulty filters to advance more quickly.

                    For users in India, payments can be made using RazorPay, while international users can utilize PayPal.

                    You will receive a payment confirmation email. Access to all content will be granted within 24 hours after you receive this confirmation.

                    Yes, please make sure that the Email ID you have used with your payment provider (PayPal/RazorPay) is the same Email ID you have registered with on Outscal’s platform in order to unlock access to content.
                    Contact Us
                    hello@outscal.com
                    Made in INDIA 💛💙