Skip to content

Handpicked resources to learn about DSA. Includes Online Judges, Websites, E-Books and Youtube Channels (Beginner to Advanced)

Notifications You must be signed in to change notification settings

tanmaypradhan4112/DSA-resources

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 

Repository files navigation

DSA-resources

  • Handpicked resources to learn about DSA. Includes Online Judges, Websites, E-Books and Youtube Channels (Beginner to Advanced)
  • Let's contribute and create a library for DSA.

Prerequisite

  • Quick Guide to DSA
  • Roadmap to DSA
  • Online Judges
  • Websites
  • Youtube Channels
  • E-books
  • DSA sheets

Quick guide to DSA

Choose a programming langauage that suits your purpose

Language to opt for (Best for beginners):

Learn about Complexities

Topics to cover:

Learn about Data Structure

Topics to cover:

Learn about Algorithms

Topics to cover:

Practice problems related to DSA

Online Judges:


ROADMAP TO DS

WEEK 1: [A,R,R,A,Y] and "STRINGS"

Topics to look for in Array:

  • Properties of Array
  • Memory allocation of Array
  • Operation on Array
  • 2D Array
  • Matrix using Array

Topics to look for in Strings:

  • Basic Concepts
  • Operation on Strings
  • Function of Strings
  • String manipulation
  • String conversion

WEEK 2: LINKED-->LIST

  • Declaration of Linked List
  • Basic operation
  • Linked List Classification
  • Singly linked list
  • Doubly linked list
  • Circular Singly linked list
  • Circular Doubly linked list
  • Basic operation

WEEK 3: [S][T][A][C][K] and Q-U-E-U-E

Topics to look for in Stack:

  • Working Of Stack
  • Stack Operation
  • Array Implementation
  • Linked List Implementation

Topics to look for in Queue:

  • Working of Queue
  • Queue operation
  • Types of Queue
  • Array Implementation
  • Linked List Implemantation

WEEK 4: TREE ⍋

  • Basic terms of Tree
  • Implementation and Application of Tree
  • Binary Tree
  • Binary Search Tree
  • B Tree
  • B+ Tree

WEEK 5: GRAPH

  • Types of Graphs
  • Implementation of Graph
  • Spanning Tree
  • Algorithm related Graph (Will be covered further..)

WEEK 6: HEAP

  • Introduction to Heap
  • Implementation and Application of Heap
  • Min Heap
  • Max Heap

WEEK 7: HASHING

  • Intrduction to Hashing
  • Hashing operation
  • Hash Functions
  • Collision Hash Techniques
  • Implementation of Hashing

Roadmap to Algoritms

WEEK 1: SEARCHING

  • Linear Search
  • Binary Search
  • Implementation of Searching

WEEK 2: SORTING

  • Selection Sort
  • Inserton Sort
  • Bubble Sort
  • Merge Sort
  • Quick Sort

WEEK 3: DIVIDE AND CONQUER

  • Terminology of DAC
  • Divide & Conquer Approach
  • Applications of Divide & Conquer

WEEK 4: GREEDY METHOD

  • Job Sequencing with deadlines
  • Knapsack algorithm
  • MST algorithm
  • Dijkstra algorithm

WEEK 5: RECURSION

  • Intro to Recursion
  • Implementation

WEEK 6: DYNAMIC PROGRAMMING

  • Optimal Binary Search Tree
  • 0/1 knapsack
  • Travelling sales person
  • All pair shorest path
  • Reliability Design

WEEK 7: BACKTRACKING

  • N-Queens
  • Graph Coloring
  • Sum of Subsets
  • Hamiltonian Cycles

Resources

Website for DSA:

  • Geeks for Geeks
  • Tutorialspoint
  • Javapoint
  • Programiz
  • Freecodecamp
  • CodeStudio

Youtube for DSA

E-books for DSA

DSA Sheets

About

Handpicked resources to learn about DSA. Includes Online Judges, Websites, E-Books and Youtube Channels (Beginner to Advanced)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published