Java Programs


Numerical Problems

Solving Linear Equations

 Java Program to Solve any Linear Equation in One Variable
Java Program to Find Inverse of a Matrix
Java Program to Perform Encoding of a Message Using Matrix Multiplication
Java Program to Perform LU Decomposition of any Matrix
Java Program to Implement Coppersmith Winograd Algorithm
Java Program to Implement Coppersmith Freivald’s Algorithm
Java Program to Implement Gauss Jordan Elimination
Java Program to Implement Gauss Seidel Method
Java Program to Represent Linear Equations in Matrix Form


Bandwidth Reduction

Java Program to Optimize Wire Length in Electrical Circuit


Matrix Multiplication

Java Program to Perform Matrix Multiplication
Java Program to Implement Strassen Algorithm
Java Program to Perform Optimal Paranthesization Using Dynamic Programming
Java Program to Find Path Between Two Nodes in a Graph
Java Program to Check if it is a Sparse Matrix
Java Program to Find Basis and Dimension of a Matrix
Java Program to Perform Complex Number Multiplication
Java Program to Check Multiplicability of Two Matrices


Determinants and Permanents

Java Program to Check if a Matrix is Invertible
Java Program to Compute Determinant of a Matrix


Constrainted and UnConstrained Optimization


Java Program to Find Minimum Value of any Algebraic Expression
Java Program to Find Maximum Value of any Algebraic Expression
Java Program to Implement Steepest Descent Method and Compute Local Optima
Java Program to Implement Conjugate Method and Compute Local Optima


Linear Programming

Java Program to Find Maximum Value of an Expression and Given 3 Inequalities
Java Program to Optimize Solution for Employer Applicant Mark Problem Using Linear Programming


Random Number Generation

Java Program to Generate N Number of Passwords of Length M Each
Java Program to Generate Date Between Given Range
Java Program to Generate Randomized Sequence of Given Range of Numbers
Java Program to Generate Random Hexadecimal Byte
Java Program to Emulate N Dice Roller
Java Program to Use rand and srand Functions
Java Program to Implement the linear congruential generator for Pseudo Random Number Generation
Java Program to Generate Random Numbers Using Multiply with Carry Method
Java Program to Generate Random Numbers Using Probability Distribution Function
Java Program to Implement Fisher-Yates Algorithm for Array Shuffling
Java Program to Implement Park-Miller Random Number Generation Algorithm
Java Program to Implement Naor Reingold Pseudo Random Function


Factoring and Primality Testing

Java Program to Implement wheel Sieve to Generate Prime Numbers Between Given Range
Java Program to Implement Sieve Of Eratosthenes
Java Program to Implement Sieve Of Atkin
Java Program to Implement Sieve Of Sundaram
Java Program to Implement Miller Rabin Primality Test Algorithm
Java Program to Find the GCD and LCM of two Numbers
Java Program to Perform the Unique Factorization of a Given Number
Java Program to Implement Euclid GCD Algorithm
Java Program to Implement Stein GCD Algorithm
Java Program to Implement Fermat Factorization Algorithm
Java Program to Implement Pollard Rho Algorithm
Java Program to Implement Fermat Primality Test Algorithm
Java Program to Implement Solovay Strassen Primality Test Algorithm

Arbitrary-Precision Arithmetic

Java Program to Perform Addition Operation Using Bitwise Operators
Java Program to Implement Booth Algorithm
Java Program to Implement Karatsuba Multiplication Algorithm
Java Program to Implement the Schonhage-Strassen Algorithm for Multiplication of Two Numbers
Java Program to Perform Arithmetic Operations on Numbers of Size Greater than that of Int Without Using any Data Type of Size Greater than Int

Knapsack Problem

Knapsack Problem  Java Program
Java Program to Solve the 0-1 Knapsack Problem
Java Program to Fill Given n Numbers into a Given N Number and Ensure that Minimum is Left from N
Java Program to Solve the Fractional Knapsack Problem
Java Program to Perform Partition of an Integer in All Possible Ways
Java Program to suffle a given array
Java Program to Find minimum and maximum values in an array
Java Program to Implement the Bin Packing Algorithm
Java Program to Solve Knapsack Problem Using Dynamic Programming
Java Program to Calculate Maximum Payoff by ReOrdering Two Given Sets


Discrete Fourier Transform

Java Program to Compute DFT Coefficients Directly
Java Program to Compute Discrete Fourier Transform Using Naive Approach
Java Program to Compute Discrete Fourier Transform Using the Fast Fourier Transform Approach
Java Perform to a 2D FFT Inplace Given a Complex 2D Array


Combinatorial Problems


Sorting

Java Program to Implement Radix Sort
Java Program to Implement Bucket Sort
Java Program to Implement Bubble Sort
Java Program to Implement Selection Sort
Java Program to Implement Quick Sort Using Randomization
Java Program to Implement Quick sort
Java Program to Implement Shell Sort
Java Program to Implement Merge Sort
Java Program to Implement Insertion Sort
Java Program to Implement Heap Sort
Java Program to Implement Sorting of Less than 100 Numbers in O(n) Complexity
Java Program to Perform Sorting Using B-Tree
Java Program to Perform Quick Sort on Large Number of Elements
Create Java Applet to Simulate Any Sorting Technique
Java Program to Implement Merge Sort Algorithm on Linked List
Java Program to Implement Counting Sort
Java Program to Perform the Sorting Using Counting Sort
Java Program to Perform the Shaker Sort
Java Program to Perform Stooge Sort


Searching

Java Program to Implement Interpolation Search Algorithm
Java Program to Implement Ternary Search Algorithm
Java Program to Compare Binary and Sequential Search
Java Program to Perform Searching Using Self-Organizing Lists
Java Program to Implement a Binary Search Algorithm for a Specific Search Sequence
Java Program to Search for an Element in a Binary Search Tree
Java Program to Implement Multi-Threaded Version of Binary Search Tree
Java Program to Perform Searching Based on Locality of Reference
Java Program to Implement Interpolation Search Algorithm
Java Program to Find kth Largest Element in a Sequence
Java Program to Search Number Using Divide and Conquer with the Aid of Fibonacci Numbers
Java Program to Perform Uniform Binary Search
Java Program to Find Minimum Element in an Array using Linear Search
Java Program to Find Maximum Element in an Array using Binary Search
Java Program to Find the Minimum Element of a Rotated Sorted Array using Binary Search approach
Java Program to Find the Peak Element of an Array O(n) time (Naive Method)
Java Program to find the peak element of an array using Binary Search approach
Java Program to find the maximum subarray sum O(n^2) time(naive method)
Java Program to find the maximum subarray sum using Binary Search approach
Java Program to find the maximum subarray sum O(n^2) time(naive method)
Java Program to find the maximum subarray sum using Binary Search approach
Java Program to find the number of occurrences of a given number using Binary Search approach


Median and Selection

Java Program to Find the Median of two Sorted Arrays using Binary Search Approach
Java Program to Find Second Smallest of n Elements with Given Complexity Constraint
Java Program to Implement Quick Sort with Given Complexity Constraint
Java Program to List the kth Quantiles of a Set within Given Time Constraint
Java Program to Find k Numbers Closest to Median of S, Where S is a Set of n Numbers
Java Program to Find Median of Elements where Elements are Stored in 2 Different Arrays
Java Program to Find ith Largest Number from a Given List Using Order-Statistic Algorithm
Java Program to Find kth Smallest Element by the Method of Partitioning the Array
Java Program to Find the Mode in a Data Set


Generating Permutations

Java Program to Implement the Alexander Bogomolny’s UnOrdered Permutation Algorithm for Elements From 1 to N
Java Program to Permute All Letters of an Input String
Java Program to Implement Heap’s Algorithm for Permutation of N Numbers
Java Program to Generate All Possible Combinations of a Given List of Numbers
Java Program to Generate a Sequence of N Characters for a Given Specific Case


Generating Subsets

Java Program to Generate All Subsets of a Given Set in the Gray Code Order
Java Program to Generate All Subsets of a Given Set in the Lexico Graphic Order
Java Program to Implement the Binary Counting Method to Generate Subsets of a Set
Java Program to Generate a Random Subset by Coin Flipping
Java Program to Generate All Possible Subsets with Exactly k Elements in Each Subset
Java Program to Generate All Possible Combinations Out of a, b, c, d, e
Java Program to Generate All Pairs of Subsets Whose Union Make the Set
Find Index of 0 to be replaced with 1 to get longest continuous sequence of 1s in a binary array


Generating Partitions

Java Program to Perform integer Partition for a Specific Case
Given a number N, write a java program that returns all possible combinations of numbers that add up to N, as lists. //(Exclude the N+0=N)
Java Program to Generate All the Set Partitions of n Numbers Begining from 1 and so on
Java Program to Generate Random Partition out of a Given Set of Numbers or Characters
Java Program to Find the Number of Ways to Write a Number as the Sum of Numbers Smaller than Itself


Generating Graphs

Java Program to Generate a Random UnDirected Graph for a Given Number of Edges
Java Program to Generate a Random Directed Acyclic Graph DAC for a Given Number of Edges
Java Program to Create a Random Graph Using Random Edge Generation
Java Program to Construct a Random Graph by the Method of Random Edge Selection
Java Program to Construct a Random Graph by the Method of Preferencial Attachment
Java Program to Create the Prufer Code for a Tree
Java Program to Generate a Graph for a Given Fixed Degree Sequence
Java Program to Generate a Semi-Random Collection of Graphs by Using the Technique of Edge-Flipping
Java Program to Check if any Graph is Possible to be Constructed for a Given Degree Sequence
Java Program to Represent Graph Using Adjacency Matrix
Java Program to Represent Graph Using Incidence Matrix
Java Program to Represent Graph Using Adjacency List
Java Program to Represent Graph Using Incidence List
Java Program to Represent Graph Using 2D Arrays
Java Program to Represent Graph Using Linked List


Graph Problems

Connected Components

Java Program to Solve any Linear Equation in One Variable
Java Program to Check whether Undirected Graph is Connected using DFS
Java Program to Check whether Directed Graph is Connected using DFS
Java Program to Check whether Undirected Graph is Connected using BFS
Java Program to Check whether Directed Graph is Connected using BFS
Java Program to Check whether Graph is Biconnected
Java Program to Find Strongly Connected Components in Graphs
Java Program to Traverse a Graph using BFS
Java Program to Traverse Graph using DFS
Java Program to Check the Connectivity of Graph Using BFS
Java Program to Check the Connectivity of Graph Using DFS
Java Program to Test Using DFS Whether a Directed Graph is Weakly Connected or Not
Java Program to Test Using DFS Whether a Directed Graph is Strongly Connected or Not
Java Program to Check if an UnDirected Graph is a Tree or Not Using DFS
Java Program to Check if a Directed Graph is a Tree or Not Using DFS
Java Program to Find the Connected Components of an UnDirected Graph
Java Program to Create a Minimal Set of All Edges Whose Addition will Convert it to a Strongly Connected DAG
Java Program to Implement Kosaraju Algorithm
Java Program to Implement Tarjan Algorithm
Java Program to Implement Gabow Algorithm


Topological Sorting

Java Program for Topological Sorting in Graphs
Java Program to Check Cycle in a Graph using Topological Sort
Java Program to Apply DFS to Perform the Topological Sorting of a Directed Acyclic Graph
Java Program to Check Whether Topological Sorting can be Performed in a Graph
Java Program to Create a Random Linear Extension for a DAG
Java Program to Generate All the Possible Linear Extensions of a DAG
Java Program to Remove the Edges in a Given Cyclic Graph such that its Linear Extension can be Found


Minimum Spanning Tree

Java Program to Find MST(Minimum Spanning Tree) using Prim’s Algorithm
Java Program to Find MST(Minimum Spanning Tree) using Kruskal’s Algorithm
Java Program to Use Boruvka’s Algorithm to Find the Minimum Spanning Tree
Java Program to Create a MST of a Set of Points Spread in Two Dimensions Using Delaunay Triangulation
Java Program to Give an Efficient Algorithm to Compute the Second-Best Minimum Spanning Tree of G


Shortest Path

Java Program to Find the Shortest Path Between Two Vertices Using Dijkstra’s Algorithm
Java Program to Find the Shortest Path from Source Vertex to All Other Vertices in Linear Time
Java Program to Use the Bellman-Ford Algorithm to Find the Shortest Path Between Two Vertices Assuming that Negative Size Edges Exist in the Graph
Java Program to Implement Shortest Path Algorithm for DAG Using Topological Sorting
Java Program to Find Shortest Path Between All Vertices Using Floyd-Warshall’s Algorithm
Java Program to Find the Shortest Cycle in a Graph
Java Program to Implement Dijkstra’s Algorithm using Queue
Java Program to Implement Dijkstra’s Algorithm using Priority Queue
Java Program to Implement Dijkstra’s Algorithm using Set
Java Program to Implement Bellman-Ford Algorithm
Java Program to Implement Floyd-Warshall Algorithm
Java Program to Implement Johnson’s Algorithm
Java Program to Find All Pairs Shortest Path


Transitive Closure and Reduction

Java Program to Find Transitive Closure of a Graph
Java Program to Implement Warshall Algorithm
Java Program to Find Transpose of a Graph Matrix


Matching

Java Program to Solve a Matching Problem for a Given Specific Case
Java Program to Rearrange Letters of a String such that no More than 1 Letters should Retain the Same Position
Java Program to Solve a Matching Problem for a Given Specific Case
Java Program to Implement the Hungarian Algorithm for Bipartite Matching
Java Program to Implement the Edmond’s Algorithm for Maximum Cardinality Matching
Java Program to Solve a Matching Problem for a Given Specific Case
Java Program to Implement Hopcroft Algorithm


Eulerian Cycle/Chinese Postman

Java Program to Implement Euler Circuit Problem
Java Program to Check Whether an Undirected Graph Contains a Eulerian Cycle
Java Program to Check Whether an Undirected Graph Contains a Eulerian Path
Java Program to Check Whether a Directed Graph Contains a Eulerian Cycle
Java Program to Check Whether a Directed Graph Contains a Eulerian Path
Java Program to Give an Implementation of the Traditional Chinese Postman Problem


Edge and Vertex Connectivity

Java Program to Check Whether it is Weakly Connected or Strongly Connected for a Directed Graph
Java Program to Check Whether a Weak Link i.e. Articulation Vertex Exists in a Graph or Check Whether G is Biconnected or Not
Java Program to Implement an Algorithm to Find the Global min Cut in a Graph
Java Program to Find the Edge Connectivity of a Graph
Java Program to Find the Vertex Connectivity of a Graph


Drawing Trees

Java Program to Perform Dictionary Operations in a Binary Search Tree
Java Program to Create a Balanced Binary Tree of the Incoming Data
Java Program to Perform Insertion in a BST
Java Program to Perform Deletion in a BST
Java Program to Perform Search in a BST
Java Program to Construct an Expression Tree for an Prefix Expression
Java Program to Construct an Expression Tree for an Postfix Expression
Java Program to Construct an Expression Tree for an Infix Expression
Java Program to Perform Preorder Non-Recursive Traversal of a Given Binary Tree
Java Program to Perform Postorder Non-Recursive Traversal of a Given Binary Tree
Java Program to Perform Inorder Recursive Traversal of a Given Binary Tree
Java Program to Sort an Array of 10 Elements Using Heap Sort Algorithm
Java Program to Implement Double Order Traversal of a Binary Tree
Java Program to Perform Left Rotation on a Binary Search Tree
Java Program to Perform Right Rotation on a Binary Search Tree
Java Program to Print the Kind of Rotation the AVL Tree is Undergoing When you Add an Element or Delete an Element
Java Program to Print only Odd Numbered Levels of a Tree
Java Program to Check if a Given Binary Tree is an AVL Tree or Not
Java Program to Delete a Particular Node in a Tree Without Using Recursion
Java Program to Find Whether a Path Exists Between 2 Given Nodes
Java Program to Check Whether an Input Binary Tree is the Sub Tree of the Binary Tree
Java Program to Implement Segment Tree
Java Program to Implement Interval Tree
Java Program to Implement Range Tree
Java Program to Implement Ternary Tree
Java Program to Implement Binary Tree
Java Program to Implement Binary Search Tree
Java Program to Implement Cartesian Tree
Java Program to Implement AA Tree
Java Program to Implement AVL Tree
Java Program to Implement Splay Tree
Java Program to Implement T Tree
Java Program to Implement Tango Tree
Java Program to Implement Threaded Binary Tree
Java Program to Implement Top Tree
Java Program to Implement Weight Balanced Tree
Java Program to Implement Trie
Java Program to Implement Suffix Tree
Java Program to Implement Treap
Java Program to Implement Red Black Tree
Java Program to Implement Rope
Java Program to Implement ScapeGoat Tree
Java Program to Implement Ternary Search Tree
Java Program to Implement Self Balancing Binary Search Tree
Java Program to Implement Expression Tree
Java Program to Find the Minimum value of Binary Search Tree
Java Program to Implement a Binary Search Tree using Linked Lists
Java Program to Implement Fenwick Tree


Planarity Detection and Embedding

Java Program to Check Whether a Graph is Planar or Not
Java Program to Implement the Hopcroft and Tarjan Algorithm
Java Program to Implement the Booth and Lueker Algorithm to Check for Planarity


Graph Search

Java Program to Implement Beam Search Algorithm
Java Program to Implement Best-First Search
Java Program to Implement Bidirectional Search
Java Program to Find SSSP(Single Source Shortest Path) in DAG(Directed Acyclic Graphs)
Java Program to Implement Find all Forward Edges in a Graph
Java Program to Implement Find all Cross Edges in a Graph
Java Program to Implement Find all Back Edges in a Graph
Java Program to Implement Depth-limited Search
Java Program to Implement Iterative Deepening
Java Program to Implement Uniform-Cost Search
Java Program to Check Cycle in a Graph using Graph traversal
Java Program to Check whether Graph is a Bipartite using BFS
Java Program to Check whether Graph is a Bipartite using DFS
Java Program to Find Number of Spanning Trees in a Complete Bipartite Graph


Hard Graph Problems 

Clique

Java Program to Find the Maximum Size Clique in a Graph
Java Program to Find a Clique by Using the Technique of the Most Dense Subgraph
Java Program to Find the Largest clique in a Planar Graph
Java Program to Solve the Decision Problem of Testing Whether a Graph Contains a Clique Larger than a Given Size
Java Program to Find a Maximum Weight Clique in a Weighted Graph
Java Program to Find All the Cliques of a Given Size k
Java Program to Find the Largest Independent Set in a Graph by Complements and Find the Clique of this Graph
Java Program to Find Independent Sets in a Graph by Graph Coloring
Java Program to Find the Maximum Independent Set of a Tree in Linear Time
Java Program to Find Size of the Largest Independent Set(LIS) in a Given a Binary Tree
Java Program to Find Size of the Largest Independent Set(LIS) in a Given an N-ary Tree


Vertex Cover

Java Program to Implement a Heuristic to Find the Vertex Cover of a Graph
Java Program to Solve the Dominating Set Problem
Java Program to Check Whether a Vertex Cover of Size k Exists


Traveling Salesman Problem

Java Program to Solve Travelling Salesman Problem for Unweighted Graph
Java Program to Implement Branch and Bound Method to Perform a Combinatorial Search
Java Program to Solve TSP Using Minimum Spanning Trees
Java Program to Solve TSP Using Incremental Insertion Method
Java Program to Find a k-Optimal Tour for TSP
Java Program to Implement Held-Karp Algorithm
Java Program to Implement Traveling Salesman Problem using Nearest neighbour Algorithm
Java Program to Implement Knight’s Tour Problem


Hamiltonian Cycle

Java Program to Find Hamiltonian Cycle in an UnWeighted Graph
Java Program to Find the Longest Path in a DAG
Java Program to Check if a Given Graph Contain Hamiltonian Cycle or Not
Java Program to Convert Hamiltonian Cycle into Path
Java Program to Check Whether a Hamiltonian Cycle or Path Exists in a Given Graph


Graph Partition

Java Program to Find Minimum Number of Edges to Cut to make the Graph Disconnected
Java Program to Partition a Tree from a Given Element using DFS
Java Program to Find the Maximum Cut in a Graph
Java Program to Perform Spectral Partitioning of a Graph


Vertex Coloring

Java Program to Perform Graph Coloring on Bipartite Graphs
Java Program to Check whether Graph is a Bipartite using 2 Color Algorithm
Java Program to Perform Edge Coloring of a Graph
Java Program to Use Color Interchange Method to Perform Vertex Coloring of Graph
Java Program to Demonstrate the Implementation of 4-Color Problem
Java Program to Perform Greedy Coloring


Edge Coloring

Java Program to Implement the Vizing’s Theorem
Java Program to Find Chromatic Index of Cyclic Graphs
Java Program to Perform Edge Coloring on Complete Graph
Java Program to Perform Edge Coloring to the Line Graph of an Input Graph
Java Program to Find the Arboricity of a Graph
Java Program to Solve the Open Shop Scheduling Problem


Steiner Tree

Java Program to Find the Steiner Tree of a Given Graph
Java Program to Apply Heuristic Based on Shortest Path to Find Steiner Tree
Java Program to Check if a Steiner Tree Size k Exists for a Graph


Feedback Edge/Vertex Set

Java Program to Check Whether Graph is DAG
Java Program to Find a Good Feedback Edge Set in a Graph
Java Program to Find a Good Feedback Vertex Set



Computational Geometry Problems


Robust Geometric Primitives

Java Program to Apply Above-Below-on Test to Find the Position of a Point with respect to a Line
Java Program to Compute the Area of a Triangle Using Determinants
Java Program to Compute the Volume of a Tetrahedron Using Determinants
Java Program to Find the Area of any Polygon Using Triangulation
Java Program to Implement Slicker Algorithm that avoids Triangulation to Find Area of a Polygon
Java Program to Use Above Below Primitive to Test Whether Two Lines Intersect
Java Program to Check if a Point d lies Inside or Outside a Circle Defined by Points a, b, c in a Plane
Java Program to Apply Delaunay Triangulation Algorithm
Java Program to Solve the Directed Segment Problem
Java Program to Solve the Directed Segment Problem
Java Program to Compute Cross Product of Two Vectors


Convex Hull

Java Program to Implement Graham Scan Algorithm to Find the Convex Hull
Java Program to Implement Gift Wrapping Algorithm in Two Dimensions
Java Program to Implement Jarvis Algorithm
Java Program to Implement Quick Hull Algorithm to Find Convex Hull
Java Program to Implement Chan’s Algorithm
Java Program to Implement Incremental Method to Find the Convex Hull
Java Program to Implement Divide and Conquer Method to Find the Convex Hull
Java Program to Implement Prune and Search Method to Find the Convex Hull


Triangulation

Java Program to Triangulate by Adding to the Convex-Hull Diagonals from the First Point to All of the Others
Java Program to Implement Delaunay Triangulation to Perform Triangulation
Java Program to Implement “Triangle” by Jonathan Shewchuk
Java Program to Implement Fortune’s Sweep2 Code
Java Program to Implement Flip Algorithm for Non-Delaunay Triangles
Java Program to Use SweepHull for Fast Delaunay Triangulation


Voronoi Diagrams

Java Program to Implement Voronoi Diagram Using Fortune’s Algorithm
Java Program to Implement Voronoi Diagram Using Divide and Conquer Algorithm
Java Program to Implement Lloyd’s Algorithm
Java Program to Implement Voronoi Diagram Problem Using Graphs
Java Program to Implement Bowyer-Watson Algorithm


Nearest Neighbor Search

Java Program to Find the Nearest Neighbor Using K-D Tree Search
Java Program to Find Nearest Neighbour Using Voronoi Diagram
Java Program to Find Nearest Neighbor for Static Data Set
Java Program to Find Nearest Neighbor for Dynamic Data Set
Java Program to Find Nearest Neighbor Using Linear Search


Range Search

Java Program to Construct K-D Tree for 2 Dimensional Data (assume static data)
Java Program to Perform Insertion in a 2 Dimension K-D Tree
Java Program to Perform Searching in a 2-Dimension K-D Tree
Java Program to Find the Node with Minimum Value (with respect to that cutting Dimension) for a Given Node, and a Cutting Dimension
Java Program to Perform Deletion in K-D Tree
Java Program to Perform 3-Dimensional Range Query
Java Program to Perform 1-Dimensional Range Query
Java Program to Perform Range Query in 2-Dimension
Java Program to Perform Dynamic Range Searching where Data is Dynamically Inserted or Deleted
Java Program to Perform Partial Key Search in a K-D Tree


Point Location

Java Program to Check Whether a Given Point is in a Given Polygon
Java Program to Find Location of a Point by Triangulation of the Given Polygon
Java Program to Find Location of a Point by Constructing K*K Grid on a Given Polygon
Java Program to Find Location of a Point Placed in Three Dimensions Using K-D Trees
Java Program to Find the Point Location Using Slab Method
Java Program to Find Location of a Point by Trapezoidal Decomposition


Intersection Detection

Java Program to Perform Sphere Sphere Intersection Testing
Java Program to Perform Interval-Interval Intersection Testing
Java Program to Perform AABB-AABB Intersection Testing
Java Program to Perform Sphere-AABB Intersection Testing
Java Program to Perform Ray-Sphere Intersection Testing
Java Program to Find Ray-Polygon Intersection Point
Java Program to Perform Polygon Containment Test
Java Program to Perform Brute Force Collision Detection
Java Program to Check Visibility of a Point X to Y
Java Program to Implement Plane Sweep Algorithms for Intersection of Lines


Bin Packing

Java Program to Implement First Fit Decreasing for 1-D Objects and M Bins
Java Program to Implement First Fit Decreasing for 1-D Objects Using Binary Tree
Java Program to Find the Minimum Area of a Rectangle to Fit N Rectangles of Different Sizes


Polygon Partitioning

Java Program to Implement Hertel-Mehlhorn Heuristic for Convex Decomposition Using Diagonals
Java Program to Delete All Lines from a Polygon such that it becomes a Convex Polygon
Java Program to Perform Triangulation to Partition the Polygon in Triangles
Java Program to Perform Optimal Convex Partitioning Using Dynamic Programming


Simplifying Polygons

Java Program for Douglas-Peucker Algorithm Implementation
Java Program to Implement Chazelle’s Linear time Triangulation Algorithm


Shape Similarity

Java Program to Perform Housdorff based Image Comparison


Motion Planning

Java Program to Construct a Visibility Graph of the Polygonal Obstacles
Java Program to Find a Set of Legal Configuration Space Points by Randon Sampling


Maintaining Line Arrangements

Java Program to Perform Degeneracy Testing on a Set of n Lines
Java Program to Perform Insertion in a Line Arrangement
Java Program to Construct a Full Arrangement of n Lines
Java Program to Perform Intersection Detection of Line Arrangement
Java Program to Find a Point P that Satisfies Maximum Number of such Constraints for a Given Set of Constraints of type yJava Program to Show the Duality Transformation of Line and Point
Java Program to Check if a Given Set of Three Points Lie on a Single Line or Not
Java Program to Implement Sweepline Algorithm
Java Program to Implement Bresenham Line Algorithm


Data-Structures Programs



Hashing

Java Program to Implement Hash Tables

Java Program to Implement Hash Tables chaining with Singly Linked Lists
Java Program to Implement Hash Tables Chaining with Binary Trees
Java Program to Implement Hash Tables Chaining with Doubly Linked Lists
Java Program to Implement Hash Tables Chaining with List Heads
Java Program to Implement Hash Tables with Linear Probing
Java Program to Implement Hash Tables with Quadratic Probing
Java Program to Implement Hash Tables with Double Hashing
Java Program to Implement Hash Trie
Java Program to Implement Hash List
Java Program to Implement prefix Hash Tree
Java Program to Implement Distributed Hash table


Heaps

Java Program to Implement Heap

Java Program to Implement Binary Heap
Java Program to Implement Weak Heap
Java Program to Implement Binomial Tree
Java Program to Implement Binomial Heap
Java Program to Implement Fibonacci Heap
Java Program to Implement Leftist Heap
Java Program to Implement Skew Heap
Java Program to Implement Ternary Heap
Java Program to Implement D-ary-Heap
Java Program to Implement Meldable Heap
Java Program to Implement Pairing Heap
Java Program to Implement Min Heap
Java Program to Implement Max Heap


Array, Vector, Stack, Queue and Linked List

Java Program to Implement Suffix Array

Java Program to Implement Sorted Array
Java Program to Implement Sparse Array
Java Program to Implement Sparse Matrix
Java Program to Implement Variable length array
Java Program to Implement vector
Java Program to Implement Bit Array
Java Program to Implement Control Table
Java Program to Implement Adjacency List
Java Program to Implement Adjacency Matrix
Java Program to Implement Graph Structured Stack
Java Program to Implement Disjoint Set Data Structure
Java Program to Implement Unrolled Linked List
Java Program to Implement VList
Java Program to Implement Xor Linked List
Java Program to Implement Difference List
Java Program to Implement Skip List
Java Program to Implement Stack
Java Program to Implement Queue
Java Program to Implement Double Ended Queue
Java Program to Implement Pagoda
Java Program to Implement Direct Addressing Tables
Java Program to Implement Stack using Two Queues
Java Program to Implement Queue using Two Stacks
Java Program to Solve Tower of Hanoi Problem using Stacks
Java Program to Convert a Decimal Number to Binary Number using Stacks
Java Program to Check for balanced parenthesis by using Stacks
Java Program to Evaluate an Expression using Stacks
Java Program to Implement Singly Linked List
Java Program to Implement Doubly Linked List
Java Program to Implement Circular Singly Linked List
Java Program to Implement Doubly Linked List
Java Program to Implement Circular Singly Linked List
Java Program to Implement Circular Doubly Linked List
Java Program to Implement Queue using Linked List
Java Program to Implement Stack using Linked List
Java Program to Implement Sorted Singly Linked List
Java Program to Implement Sorted Doubly Linked List
Java Program to Implement Sorted Circularly Singly Linked List
Java Program to Implement Sorted Circular Doubly Linked List
Java Program to add two large numbers using Linked List
Java Program to subtract two large numbers using Linked Lists
Java Program to Implement Triply Linked List
Java Program to Implement Self organizing List
Java Program to implement Dynamic Array
Java Program to implement Associate Array
Java Program to Implement Sorted List
Java Program to Implement Sorted Vector
Java Program to implement Sparse Vector
Java Program to implement Array Deque


Collection API Programs


Collection API

Java Program to Implement HashSet API
Java Program to Implement LinkedHashSet API
Java Program to Implement TreeSet API
Java Program to Implement ArrayList API
Java Program to Implement LinkedList API
Java Program to Implement HashMap API
Java Program to Implement HashTable API
Java Program to Implement LinkedHashMap API
Java Program to Implement TreeMap API
Java Program to Implement WeakHashMap API
Java Program to Implement IdentityHashMap API
Java Program to Implement EnumMap API
Java Program to Implement ConcurrentHashMap API
Java Program to Implement ConcurrentSkipListMap API
Java Program to Implement Attribute API
Java Program to Implement PrinterStateReasons API
Java Program to Implement ArrayDeque API
Java Program to Implement LinkedBlockingDeque API
Java Program to Implement RenderingHints API
Java Program to Implement SimpeBindings API
Java Program to Implement LinkedBlockingDeque API
Java Program to Implement ArrayBlockingQueue API
Java Program to Implement ConcurrentLinkedQueue API
Java Program to Implement DelayQueue API
Java Program to Implement LinkedBlockingQueue API
Java Program to Implement LinkedTransferQueue API
Java Program to Implement PriorityBlockingQueue API
Java Program to Implement PriorityQueue API
Java Program to Implement SynchronosQueue API
Java Program to Implement Stack API
Java Program to Implement Vector API
Java Program to Implement AttributeList API
Java Program to Implement RoleList API
Java Program to Implement CopyOnWriteArrayList API
Java Program to Implement RoleUnresolvedList API
Java Program to Implement CopyOnWriteArraySet API
Java Program to Implement JobStateReasons API




Extra Java Programs:

Horner Algorithm
Nth Root Algorithm
Borwein Algorithm
Cubic convergence 1/pi Algorithm
Shunting Yard Algorithm
Repeated Squaring Algorithm
Shoelace Algorithm
Efficient O(log n) Fibonacci generator
Regular Falsi Algorithm
Gaussian Elimination Algorithm

Gale Shapley Algorithm
Floyd Cycle Algorithm
Brent Cycle Algorithm
K Way Merge Algorithm
Flood Fill Algorithm

Java Program to Describe the Representation of Graph using Adjacency Matrix
Java Program to Describe the Representation of Graph using Incidence Matrix
Java Program to Describe the Representation of Graph using Adjacency List
Java Program to Describe the Representation of Graph using Incidence List
Java Program to Implement Disjoint Sets
Java Program to Implement Ford–Fulkerson Algorithm
Java Program to Implement Max-Flow Min-Cut Theorem
Java Program to Implement Network Flow Problem
Java Program to Find Number of Articulation points in a Graph
Java Program to Implement Word Wrap Problem
Java Program to Implement Maximum Length Chain of Pairs
Java Program to Implement Graph Coloring Algorithm
Java Program to Implement Hamiltonian Cycle Algorithm


Java Program to Implement Segment Tree

Java Program to Implement Bloom Filter
Java Program to Implement CountMinSketch
Java Program to implement Bi Directional Map
Java Program to implement Circular Buffer
Java Program to implement Bit Set
Java Program to implement Bit Matrix
Java Program to implement Priority Queue
Java Program to Implement Patricia Trie
Java program to Implement Tree Set


100+ Best Home Decoration Ideas For Christmas Day 2019 To Make Home Beautiful

Best gifts for Christmas Day | Greeting cards for Christmas Day | Gift your children a new gift on Christmas day This Christmas d...