Skip to content

Data structures (Dynamic Array, Stack Array, etc.) and algorithms (sorting, searching, etc.) optimized for primitive types (int, float) to ensure fast performance, complete with thorough documentation.

Notifications You must be signed in to change notification settings

Sathvik-Rao/Data_Structures_and_Algorithms_in_Java

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Data Structures and Algorithms in Java

This repository contains implementations of various data structures and algorithms in Java, focusing on using primitive types for efficiency.

Overview

The project aims to provide efficient implementations of fundamental data structures and algorithms using primitive types in Java. By utilizing primitive types, we aim to maximize performance and minimize memory overhead.

DynamicArray da = new DynamicArray("byte"); // primitive type  
da.add((byte)4);
...

StackArray sa = new StackArray("char");  // primitive type  
sa.push('a');
...

QuickSort.sort(arr,'a');  // primitive type  
...

Screenshot 2024-04-11 220948

package structure
dsa
├───algorithms
│   ├───problems
|   |   └───MaximumSubArraySum.java         (primitive types)
│   ├───sort
|   |   ├───BubbleSort.java                 (primitive types + Object type)
|   |   ├───BucketSort.java                 (float + Float + double + Double)
|   |   ├───CountingSort.java               (char + byte + short + int)
|   |   ├───HeapSort.java                   (primitive types + Object type)
|   |   ├───InsertionSort.java              (primitive types + Object type)
|   |   ├───MergeSort.java                  (primitive types + Object type)
|   |   ├───MergeSort_Multithreading.java   (primitive types + Object type)
|   |   ├───QuickSort.java                  (primitive types + Object type)
|   |   ├───RadixSort.java                  (char + byte + short + int + long)
|   |   ├───RandomizedQuickSort.java        (primitive types + Object type)
|   |   └───SelectionSort.java              (primitive types + Object type)
|   └───search
|       └───LinearSearch.java               (primitive types + Object type)
└───datastructures
    ├───heap
    |   └───Heap.java                       (Object type)
    ├───linkedlist
    |   └───Linked_List.java                (primitive types)
    ├───list
    |   └───DynamicArray.java               (primitive types)
    ├───queue
    |   ├───QueueArray.java                 (primitive types)
    |   └───QueueLinkedList.java            (primitive types)
    └───stack
        ├───StackArray.java                 (primitive types)
        └───StackLinkedList.java            (primitive types)

Documentation/Help -> documentation\index.html

Example program -> Example.java


MaximumSubArraySum

MaximumSubArraySum


BubbleSort

Bubble_Sort


BucketSort

Bucket_Sort


CountingSort

Counting_Sort


HeapSort

Heap_Sort


InsertionSort

Insertion_Sort


MergeSort

Merge_Sort


RadixSort

Radix_Sort


RandomizedQuickSort

Randomized_Quick_Sort


SelectionSort

Selection_Sort

About

Data structures (Dynamic Array, Stack Array, etc.) and algorithms (sorting, searching, etc.) optimized for primitive types (int, float) to ensure fast performance, complete with thorough documentation.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages