/data-structures-in-java

Data structures in detail with java implementations

Primary LanguageJava

Data Structures In Java


Important Notes;

This is my data structure implementations that I wrote as I learned them on my DS recap. There is no lamer-stuff here. There are uncompleted code implementations on several packages and if you want to check it out, just go to the "ToDo's" section at the bottom of this readme file.

Levent Divilioglu Summer-2017


  1. Intro: Package: ds_001_intro

    1. Find Primes
    2. Greatest Common Divisor
    3. Least Common Multiple
    4. Prime Factors
    5. Randomization Demo
    6. Random Pick Demo
    7. Pseudo Number Generator
    8. Testing Primes
    9. Rectangle Rule Demo
    10. Rectangle Rule Demo 2
    11. Trapezoid Rule Demo
    12. Trapezoid Rule Demo 2
    13. Trapezoid Rule Demo 3
  2. Linked Lists: Package: ds_002_linkedlists

    1. Cell
    2. Doubly Cell
    3. Linked List
    4. Linked List Demo
    5. Doubly Linked List
    6. Doubly Linked List Demo
    7. Sorted Linked List
    8. Sorted Linked List Demo
    9. Sorting Items With Sorted Linked List Demo
  3. Arrays: Package: ds_003_arrays

    1. 2D Array With Dynamic Row Number Demo
    2. Dynamic Array
    3. Dynamic Array Demo
    4. One Dimensional Array Demo
    5. Print Upper And Lower For 2D Matrix Demo
    6. Sparse Array
    7. Sparse Array Demo
    8. Triangular Array
    9. Triangular Array Demo
    10. Word Pattern With 2D Array Demo
  4. Stacks & Queues: Package: ds_004_stacks_and_queues

    1. Doubly Stack
    2. Doubly Stack Demo
    3. Queue
    4. Queue Array
    5. Queue Array Demo
    6. Queue Circular Array
    7. Queue Circular Array Demo
    8. Queue Demo
    9. Stack
    10. Stack Algorithms Demo
    11. Stack Array
    12. Stack Array Demo
    13. Stack Demo
  5. Sorting: Package: ds_005_sorting

    1. Bubble Sort Demo
    2. Bubble Sort Modified Demo
    3. Counting Sort Demo
    4. Counting Sort Modified Demo
    5. Heap Array
    6. Heap Array Demo
    7. Heap Tree
    8. Heap Tree Demo
    9. Insertion Sort Demo
    10. Insertion Sort Linked List Demo
    11. Merge Sort Demo
    12. Quick Sort Demo
    13. Selection Sort Demo
    14. SQueue: Queue Implementation Used In The Package
    15. SQueue Demo
    16. SStack: Stack Implementation Used In The Package
    17. SStack Demo
  6. Searching: Package: ds_006_searching

    1. Binary Search Demo
    2. Interpolation Search Demo
    3. Linear Search Demo
  7. Hash Tables: Package: ds_007_hashtables

    1. Basic HashTable
    2. Basic HashTable Demo
    3. Chaining HashTable
    4. Chaining HashTable Demo
    5. Chaining HashTable Generic
    6. Chaining HashTable Generic Demo
  8. Recursion: Package: ds_008_recursion

    1. Combination Demo
    2. Combination No Duplicates Demo
    3. Factorial Demo
    4. Fibonacci Iterative Demo
    5. Fibonacci Recursive Demo
    6. Fibonacci With Array Demo
    7. Fibonacci With Stack Demo
    8. Iterative Demo
    9. Peg Stack
    10. Peg Stack Test
    11. Permutation Demo
    12. Permutation No Duplicates Demo
    13. Recursion Fail Demo
    14. Tail Recursion Fail Demo
    15. Tail Recursion Fixed Demo
    16. Tower Of Hanoi Demo
    17. Tower Of Hanoi Peg Stack Demo
  9. Backtracking: Package: ds_009_backtracking

    1. Custom Eight Queens
    2. Eight Queens Mod Solution 1
    3. Eight Queens Mod Solution 2
    4. Eight Queens Solution
  10. Trees: Package: ds_010_trees

    1. Binary Node
    2. Binary Tree
    3. Binary Tree Demo
    4. Binary Tree Traversal Demo
    5. Children
    6. Children Test
    7. Nary Node
    8. Nary Tree Traversal Demo
    9. SQueue: Queue Implementation Used In The Package
    10. SQueue Demo
    11. SStack: Stack Implementation Used In The Package
    12. Trinary Node
    13. Trinary Tree Traversal Demo
  11. Balanced Trees: Package: ds_011_balanced_trees

    1. AVL Tree
    2. Basic BTree Node Search Demo
    3. BTree
    4. BTree Bucket
    5. BTree Demo
    6. Dummy BTree Node
  12. Decision Trees: Package: ds_012_decision_trees

    1. Decision Tree Generic Solution Demo
    2. Knights Tour Problem
    3. Partition Problem Enhanced Example
    4. Partition Problem Example
    5. Partition Problem Generic Solution
  13. Network Algorithms: Package: ds_013_network_algorithms

    1. Breadth First Demo
    2. Depth First Demo
    3. Floyd Warshall All Pairs Shortest Path Demo
    4. Shortest Path Label Correcting Demo
    5. Shortest Path Label Setting Demo
    6. SQueue: Queue Implementation Used In The Package
  14. Network Algorithms - Sample Classes: Package: ds_013_network_algorithms.sampleClasses

    1. Directed Link Example Class
    2. Directed Node Example Class
    3. Enhanced Directed Link Example Class
    4. Enhanced Directed Node Example Class
    5. Simple Node Class Example
    6. Undirected Link Example Class
    7. Undirected Node Example Class
  15. Misc: Package: ds_999_misc

    1. Check Anagram
    2. Find Greatest Sum
    3. Number Permutation
    4. Word Combination
    5. Word Permutation

ToDo's:

  • Appendix will be created in this Readme file
  • DS_011 Package: BTree implementation will be completed
  • DS_011 Package: AVLTree implementation will be completed
  • DS_012 Package: Knight's Tour is going to be demonstrated
  • DS_013 Package: Graphs are going to be completed
  • DS_013 Package: Breadth-First Wave to be implemented
  • DS_013 Package: Prim's algorithm to be implemented
  • DS_013 Package: Kruskal's algorithm to be implemented