Skip to content

atomhudson/DSA

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

58 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Data Structures and Algorithms

Welcome to the Data Structures and Algorithms (DSA) repository! This repository contains a collection of problems, solutions, and resources aimed at helping you strengthen your understanding and implementation skills in DSA. The content is designed for intermediate learners who have a basic understanding of programming and want to deepen their knowledge in DSA.

Contents

Introduction

This repository is designed for individuals who have a basic grasp of programming and are looking to enhance their understanding of data structures and algorithms. The problems and solutions provided here will help you build a strong foundation in DSA, preparing you for technical interviews and advanced coursework.

Prerequisites

To get the most out of this repository, you should have:

  • Basic programming knowledge in a language like Java, Python, or C++
  • Understanding of basic programming concepts such as variables, loops, and conditionals
  • Familiarity with basic data structures (arrays, linked lists) and algorithms (sorting, searching)

Topics Covered

Data Structures

  1. Arrays and Strings

    • Dynamic arrays and array manipulation
    • String operations and pattern matching
  2. Linked Lists

    • Singly linked lists
    • Doubly linked lists
    • Circular linked lists
  3. Stacks and Queues

    • Stack operations and applications
    • Queue operations and applications
    • Priority queues and heap implementation

Algorithms

  1. Sorting Algorithms

    • Bubble sort, selection sort, insertion sort
    • Merge sort, quick sort, heap sort
    • Counting sort, radix sort, bucket sort
  2. Searching Algorithms

    • Linear search, binary search
    • Search algorithms in data structures (BST, hash table)
  3. Recursion and Backtracking

    • Recursive algorithms and problems
    • Backtracking algorithms and applications (N-Queens, Sudoku)