GFG Learning Hub

Your one-stop resource for computer science learning, practice, and interview preparation.

Learning Hub Banner

Core CS Subjects

Data Structures

Learn about arrays, linked lists, trees, graphs, and more fundamental data structures.

Includes:

  • Array and string manipulation techniques
  • Linked lists, stacks, and queues implementation
  • Tree and graph traversal algorithms
  • Hash tables and collision resolution

Algorithms

Master sorting, searching, dynamic programming, and greedy algorithms.

Includes:

  • Sorting algorithms and their complexity
  • Binary search and its variations
  • Dynamic programming approach and problems
  • Greedy algorithms with real-world applications

Operating Systems

Understand processes, threads, memory management, and file systems.

Includes:

  • Process scheduling and synchronization
  • Memory management techniques
  • File system implementation
  • Deadlock prevention and recovery

Database Management

Learn SQL, normalization, transaction management, and database design.

Includes:

  • SQL query optimization techniques
  • Database normalization and design
  • Transaction management and ACID properties
  • NoSQL databases and their use cases

Computer Networks

Explore network protocols, architecture, security, and application layer concepts.

Includes:

  • TCP/IP protocol suite in depth
  • Network security fundamentals
  • Routing algorithms and protocols
  • Socket programming and network applications

Theory of Computation

Study automata theory, formal languages, computability, and complexity theory.

Includes:

  • Finite automata and regular expressions
  • Context-free grammars and pushdown automata
  • Turing machines and computability
  • Complexity classes (P, NP, NP-complete)

Programming Languages

C/C++

Learn system programming with powerful languages used in competitive programming.

Includes:

  • Memory management and pointers
  • Object-oriented programming in C++
  • STL containers and algorithms
  • Multi-threading and concurrency

Java

Master object-oriented programming with one of the most widely used languages.

Includes:

  • Core Java and OOP concepts
  • Collections framework and generics
  • Multithreading and concurrency
  • Java frameworks (Spring, Hibernate)

Python

Explore a versatile language popular in web development, data science, and AI.

Includes:

  • Python fundamentals and data structures
  • Object-oriented programming in Python
  • Libraries for data science (NumPy, Pandas)
  • Web frameworks (Django, Flask)

JavaScript

Learn the language of the web for building interactive front-end applications.

Includes:

  • ES6+ features and syntax
  • DOM manipulation and events
  • Asynchronous JavaScript
  • Web APIs and fetch
  • Modern ES6+ features

Go

Discover a modern language designed for concurrent programming and performance.

Includes:

  • Go syntax and basic constructs
  • Concurrency with goroutines and channels
  • Error handling patterns
  • Web services and microservices

Rust

Explore a systems language focused on safety, speed, and concurrency.

Includes:

  • Ownership, borrowing, and lifetimes
  • Pattern matching and error handling
  • Concurrency without data races
  • Systems programming and WebAssembly

DSA & Competitive Programming

Arrays & Strings

Master fundamental data structures with common interview problems and solutions.

Includes:

  • Two-pointer techniques
  • Sliding window algorithms
  • String manipulation and pattern matching
  • Matrix operations and traversals

Linked Lists

Learn operations, implementations, and common problems on linked data structures.

Includes:

  • Singly and doubly linked lists
  • Fast and slow pointer techniques
  • Cycle detection algorithms
  • Merge and sort operations

Trees & Graphs

Explore hierarchical and network data structures with traversal algorithms.

Includes:

  • Tree traversals (in-order, pre-order, post-order)
  • Binary search trees and balancing
  • Graph representations and traversals
  • Shortest path algorithms

Dynamic Programming

Master the art of breaking down problems into simpler subproblems.

Includes:

  • Memoization and tabulation techniques
  • Classic DP problems (knapsack, LCS)
  • State transitions and recurrence relations
  • Optimization problems

Greedy Algorithms

Learn to make locally optimal choices to find global optimum solutions.

Includes:

  • Activity selection problems
  • Huffman coding and data compression
  • Minimum spanning trees
  • Interval scheduling algorithms

Competitive Programming

Practice problem-solving skills with timed challenges and contests.

Includes:

  • Contest strategies and time management
  • Problem-solving patterns
  • Advanced algorithm techniques
  • Mock contests and practice problems

Web Development

HTML & CSS

Build the foundation of web development with markup and styling languages.

Includes:

  • Semantic HTML5 elements and structure
  • CSS layouts (Flexbox, Grid)
  • Responsive design principles
  • CSS animations and transitions

JavaScript & DOM

Learn to create dynamic and interactive web applications.

Includes:

  • DOM manipulation and events
  • Asynchronous JavaScript
  • Web APIs and fetch
  • Modern ES6+ features

React.js

Master the popular library for building user interfaces and single-page applications.

Includes:

  • Component architecture
  • State management (Context, Redux)
  • Hooks and functional components
  • Performance optimization techniques

Node.js

Explore server-side JavaScript for building scalable network applications.

Includes:

  • Express.js framework
  • RESTful API design
  • Database integration
  • Authentication and authorization

Full Stack Development

Learn to build complete web applications from front-end to back-end.

Includes:

  • Client-server architecture
  • API integration and design
  • Database design and ORM
  • Deployment and DevOps basics

Web Security

Understand common vulnerabilities and how to secure web applications.

Includes:

  • OWASP top 10 vulnerabilities
  • Authentication and authorization
  • HTTPS and TLS
  • Cross-site scripting (XSS) prevention

AI & Machine Learning

Machine Learning Fundamentals

Learn the core concepts and algorithms that power modern AI systems.

Includes:

  • Supervised and unsupervised learning
  • Linear regression and classification
  • Decision trees and ensemble methods
  • Model evaluation and validation

Deep Learning & Neural Networks

Explore artificial neural networks and deep learning architectures.

Includes:

  • Feedforward and convolutional neural networks
  • Recurrent neural networks (RNNs, LSTMs)
  • Backpropagation and optimization
  • TensorFlow and PyTorch frameworks

Natural Language Processing

Master techniques for processing and understanding human language.

Includes:

  • Text preprocessing and tokenization
  • Sentiment analysis and classification
  • Named entity recognition
  • Transformer models and BERT

Computer Vision

Learn to build systems that can interpret and analyze visual information.

Includes:

  • Image processing and feature extraction
  • Object detection and recognition
  • Convolutional neural networks for vision
  • OpenCV and image manipulation

Data Science & Analytics

Extract insights from data using statistical methods and visualization.

Includes:

  • Data cleaning and preprocessing
  • Statistical analysis and hypothesis testing
  • Data visualization with matplotlib/seaborn
  • Pandas and NumPy for data manipulation

AI Ethics & Responsible AI

Understand the ethical implications and responsible development of AI systems.

Includes:

  • Bias detection and mitigation
  • Fairness in machine learning
  • Privacy-preserving AI techniques
  • Explainable AI and interpretability

Interview Preparation

Technical Interview Prep

Prepare for coding interviews with practice problems and strategies.

Includes:

  • Problem-solving approaches
  • Time and space complexity analysis
  • Common interview patterns
  • Mock interview practice

System Design

Learn to design scalable, reliable, and maintainable software systems.

Includes:

  • Scalability and performance
  • Microservices architecture
  • Database design and sharding
  • Load balancing and caching

Object-Oriented Design

Master designing software using object-oriented principles and patterns.

Includes:

  • SOLID principles
  • Design patterns (Creational, Structural, Behavioral)
  • UML diagrams and modeling
  • Code refactoring techniques

Behavioral Interviews

Prepare for questions about your experience, teamwork, and problem-solving.

Includes:

  • STAR method for answering questions
  • Leadership and teamwork examples
  • Conflict resolution scenarios
  • Communication skills practice

Resume Building

Create an effective technical resume that highlights your skills and projects.

Includes:

  • Resume formatting and structure
  • Project descriptions and impact statements
  • Skills section optimization
  • ATS-friendly resume techniques

Mock Interviews

Practice with simulated interview scenarios to build confidence.

Includes:

  • Technical coding interviews
  • System design interview practice
  • Behavioral question preparation
  • Feedback and improvement strategies

Practice with LeetCode

DSA 75

Top 75 data structures and algorithms problems to master coding interviews.

Includes:

  • Array and string manipulation problems
  • Tree and graph algorithm challenges
  • Dynamic programming interview questions
  • Sorting and searching algorithm exercises

SQL 50

Essential SQL problems to prepare for database-related interview questions.

Includes:

  • Basic SELECT, WHERE, and JOIN queries
  • Aggregation functions and GROUP BY
  • Window functions and advanced SQL
  • Database design and optimization problems