Skip to content

Nullkernel/DSA

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

471 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DSA

This repository contains Java implementations of Data Structures and Algorithms developed during a Data Structures Bootcamp.
It is designed to help understand core concepts through clean, readable, and beginner-friendly code. The implementations prioritize simplicity and correctness over heavy optimization, making them suitable for learning, revision, and interview preparation.


Repository Overview:

The repository is organized into folders based on topic for better navigation and clarity.

Data-Structures:

This directory contains implementations of fundamental data structures in Java, including:

  • Linked Lists:
    • Singly Linked Lists.
    • Circular Linked Lists.
  • Stacks :
    • Linear Stack.
  • Queues :
    • Linear Queue.
    • Circular Queue.
  • Trees :
    • Binary Tree.
    • Binary Search Tree.
    • AVL Tree.
  • Graphs :
    • Adjacency Matrix.
    • Adjacency List.
    • BFS algorithm.
    • DFS algorithm.
    • Dijkstra's algorithm.
  • Hashtable

Searching-algorithms:

This directory includes Java implementations of common searching techniques:

  • Linear Search.
  • Binary Search.
  • Uniform Binary Search.
  • Fibonacci Search.
  • Interpolation Search.

The implementations demonstrate how different searching strategies behave under different conditions.

Sorting-algorithms:

This directory contains Java implementations of basic sorting algorithms such as:

  • Bubble Sort.
  • Selection Sort.
  • Insertion Sort.
  • Quick Sort.
  • Radix Sort.
  • Merge Sort.
  • Shell Sort.
  • Heap sort.

These programs are written to clearly show algorithm flow and logic rather than micro-optimizations.

Notes:

This directory contains Markdown notes created during the bootcamp sessions.
The notes explain:

  • Key concepts.
  • Algorithm intuition.
  • Important observations.
  • Day wise concepts.

Technology Stack:

  • Programming Language: Java.
  • Development Environment: Any Java-compatible IDE.
  • License: MIT.

How to Use This Repository?

  1. Clone the repository:

    git clone https://github.com/Pranav-173/DSA.git

    (or)

    git clone https://github.com/Nullkernel/DSA.git

Development Checks

  • Run a Java compile smoke test:
    ./scripts/compile_smoke.sh
  • The smoke test:
    • Scans Searching-algorithms/, Sorting-algorithms/, and Data-Structures/.
    • Compiles files in deterministic (sorted) order.
    • Uses isolated temporary output folders per file to avoid default-package collisions.
    • Prints [PASS] / [FAIL] per file and exits non-zero when any file fails.

About

A simple Repository that contains the content of basic implementations of classic data structures and fundamental algorithms. The code here is optimized and simple, which makes it easier to understand.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Java 98.6%
  • Shell 1.4%