MCPcopy Create free account

hub / github.com/TheAlgorithms/Java / types & classes

Types & classes1,826 in github.com/TheAlgorithms/Java

ClassA5Cipher
The A5Cipher class implements the A5/1 stream cipher, which is a widely used encryption algorithm, particularly in mobile communications. This implem
src/main/java/com/thealgorithms/ciphers/a5/A5Cipher.java:17
ClassA5CipherTest
src/test/java/com/thealgorithms/ciphers/a5/A5CipherTest.java:9
ClassA5KeyStreamGenerator
The A5KeyStreamGenerator class is responsible for generating key streams for the A5/1 encryption algorithm using a combination of Linear Feedback Shif
src/main/java/com/thealgorithms/ciphers/a5/A5KeyStreamGenerator.java:18
ClassA5KeyStreamGeneratorTest
src/test/java/com/thealgorithms/ciphers/a5/A5KeyStreamGeneratorTest.java:12
ClassADFGVXCipher
The ADFGVX cipher is a fractionating transposition cipher that was used by the German Army during World War I. It combines a Polybius square substitu
src/main/java/com/thealgorithms/ciphers/ADFGVXCipher.java:27
ClassADFGVXCipherTest
src/test/java/com/thealgorithms/ciphers/ADFGVXCipherTest.java:7
ClassADTFraction
src/main/java/com/thealgorithms/maths/ADTFraction.java:3
ClassADTFractionTest
src/test/java/com/thealgorithms/maths/ADTFractionTest.java:9
ClassAES
This class is build to demonstrate the application of the AES-algorithm on a single 128-Bit block of data.
src/main/java/com/thealgorithms/ciphers/AES.java:10
ClassAESEncryption
This example program shows how AES encryption and decryption can be done in Java. Please note that secret key and encrypted text is unreadable binary
src/main/java/com/thealgorithms/ciphers/AESEncryption.java:20
ClassAESEncryptionTest
src/test/java/com/thealgorithms/ciphers/AESEncryptionTest.java:10
ClassANDGate
AND Gate implementation. Returns true if all inputs are true; otherwise, false.
src/main/java/com/thealgorithms/bitmanipulation/BooleanAlgebraGates.java:31
ClassAStar
AStar class implements the A pathfinding algorithm to find the shortest path in a graph. The graph is represented using an adjacency list, and the alg
src/main/java/com/thealgorithms/datastructures/graphs/AStar.java:14
ClassAStarTest
src/test/java/com/thealgorithms/datastructures/graphs/AStarTest.java:12
ClassAVLSimple
src/main/java/com/thealgorithms/datastructures/trees/AVLSimple.java:29
ClassAVLTree
Represents an AVL Tree, a self-balancing binary search tree. In an AVL tree, the heights of the two child subtrees of any node differ by at most one.
src/main/java/com/thealgorithms/datastructures/trees/AVLTree.java:12
ClassAVLTreeTest
src/test/java/com/thealgorithms/datastructures/trees/AVLTreeTest.java:11
ClassAbbreviation
A class that provides a solution to the abbreviation problem. Problem: Given two strings, `a` and `b`, determine if string `a` can be transformed int
src/main/java/com/thealgorithms/dynamicprogramming/Abbreviation.java:15
ClassAbbreviationTest
src/test/java/com/thealgorithms/dynamicprogramming/AbbreviationTest.java:10
ClassAbsoluteMax
src/main/java/com/thealgorithms/maths/AbsoluteMax.java:3
ClassAbsoluteMaxTest
src/test/java/com/thealgorithms/maths/AbsoluteMaxTest.java:8
ClassAbsoluteMin
src/main/java/com/thealgorithms/maths/AbsoluteMin.java:5
ClassAbsoluteMinTest
src/test/java/com/thealgorithms/maths/AbsoluteMinTest.java:8
ClassAbsoluteValue
src/main/java/com/thealgorithms/maths/AbsoluteValue.java:3
ClassAbsoluteValueTest
src/test/java/com/thealgorithms/maths/AbsoluteValueTest.java:9
ClassAbundantNumber
In number theory, an abundant number or excessive number is a positive integer for which the sum of its proper divisors is greater than the number. Eq
src/main/java/com/thealgorithms/maths/AbundantNumber.java:12
ClassAbundantNumberTest
src/test/java/com/thealgorithms/maths/AbundantNumberTest.java:10
ClassAccountMerge
Merges account records using Disjoint Set Union (Union-Find) on shared emails. <p>Input format: each account is a list where the first element is the
src/main/java/com/thealgorithms/graph/AccountMerge.java:16
ClassAccountMergeTest
src/test/java/com/thealgorithms/graph/AccountMergeTest.java:8
ClassActivitySelection
src/main/java/com/thealgorithms/greedyalgorithms/ActivitySelection.java:9
ClassActivitySelectionTest
src/test/java/com/thealgorithms/greedyalgorithms/ActivitySelectionTest.java:11
ClassAdaptiveMergeSort
src/main/java/com/thealgorithms/sorts/AdaptiveMergeSort.java:3
ClassAdaptiveMergeSortTest
src/test/java/com/thealgorithms/sorts/AdaptiveMergeSortTest.java:8
ClassAdjacencyList
A class representing the adjacency list of a directed graph. The adjacency list maintains a mapping of vertices to their adjacent vertices. @param <E
src/main/java/com/thealgorithms/datastructures/graphs/KahnsAlgorithm.java:18
ClassAdjacencyListGraph
src/main/java/com/thealgorithms/datastructures/graphs/Graphs.java:5
ClassAdjacencyMatrixGraph
AdjacencyMatrixGraph Implementation
src/main/java/com/thealgorithms/datastructures/graphs/MatrixGraphs.java:46
ClassAffineCipher
The AffineCipher class implements the Affine cipher, a type of monoalphabetic substitution cipher. It encrypts and decrypts messages using a linear tr
src/main/java/com/thealgorithms/ciphers/AffineCipher.java:21
ClassAffineCipherTest
src/test/java/com/thealgorithms/ciphers/AffineCipherTest.java:7
ClassAffineConverter
A utility class to perform affine transformations of the form: y = slope x + intercept. This class supports inversion and composition of affine trans
src/main/java/com/thealgorithms/conversions/AffineConverter.java:10
ClassAffineConverterTest
src/test/java/com/thealgorithms/conversions/AffineConverterTest.java:9
ClassAgent
src/main/java/com/thealgorithms/scheduling/MultiAgentScheduling.java:19
ClassAgingScheduling
AgingScheduling is an algorithm designed to prevent starvation by gradually increasing the priority of waiting tasks. The longer a process waits, the
src/main/java/com/thealgorithms/scheduling/AgingScheduling.java:16
ClassAgingSchedulingTest
src/test/java/com/thealgorithms/scheduling/AgingSchedulingTest.java:9
ClassAhoCorasick
src/main/java/com/thealgorithms/strings/AhoCorasick.java:21
ClassAhoCorasickTest
This class contains test cases for the Aho-Corasick String Matching Algorithm. The Aho-Corasick algorithm is used to efficiently find all occurrences
src/test/java/com/thealgorithms/strings/AhoCorasickTest.java:25
ClassAliquotSum
In number theory, the aliquot sum s(n) of a positive integer n is the sum of all proper divisors of n, that is, all divisors of n other than n itself.
src/main/java/com/thealgorithms/maths/AliquotSum.java:12
ClassAliquotSumTest
src/test/java/com/thealgorithms/maths/AliquotSumTest.java:7
ClassAllConstruct
This class provides a solution to the "All Construct" problem. The problem is to determine all the ways a target string can be constructed from a giv
src/main/java/com/thealgorithms/dynamicprogramming/AllConstruct.java:15
ClassAllConstructTest
src/test/java/com/thealgorithms/dynamicprogramming/AllConstructTest.java:11
ClassAllPathsFromSourceToTarget
Finds all possible simple paths from a given source vertex to a destination vertex in a directed graph using backtracking. <p>This algorithm performs
src/main/java/com/thealgorithms/backtracking/AllPathsFromSourceToTarget.java:37
ClassAllPathsFromSourceToTargetTest
src/test/java/com/thealgorithms/backtracking/AllPathsFromSourceToTargetTest.java:8
ClassAlphabetical
Utility class for checking whether a string's characters are in non-decreasing lexicographical order based on Unicode code points (case-insensitive).
src/main/java/com/thealgorithms/strings/Alphabetical.java:17
ClassAlphabeticalTest
src/test/java/com/thealgorithms/strings/AlphabeticalTest.java:13
ClassAlternativeStringArrange
This class provides a method to arrange two strings by alternating their characters. If one string is longer, the remaining characters of the longer s
src/main/java/com/thealgorithms/strings/AlternativeStringArrange.java:16
ClassAlternativeStringArrangeTest
src/test/java/com/thealgorithms/strings/AlternativeStringArrangeTest.java:11
ClassAmicableNumber
Amicable numbers are two different natural numbers that the sum of the proper divisors of each is equal to the other number. (A proper divisor of a nu
src/main/java/com/thealgorithms/maths/AmicableNumber.java:22
ClassAmicableNumberTest
src/test/java/com/thealgorithms/maths/AmicableNumberTest.java:10
ClassAnagramTestCase
src/test/java/com/thealgorithms/strings/AnagramsTest.java:11
ClassAnagrams
An anagram is a word or phrase formed by rearranging the letters of a different word or phrase, typically using all the original letters exactly once.
src/main/java/com/thealgorithms/strings/Anagrams.java:13
ClassAnagramsTest
src/test/java/com/thealgorithms/strings/AnagramsTest.java:9
ClassAnyBaseToAnyBase
Class for converting from "any" base to "any" other base, when "any" means from 2-36. Works by going from base 1 to decimal to base 2. Includes auxili
src/main/java/com/thealgorithms/conversions/AnyBaseToAnyBase.java:17
ClassAnyBaseToDecimal
@author Varun Upadhyay (<a href="https://github.com/varunu28">...</a>)
src/main/java/com/thealgorithms/conversions/AnyBaseToDecimal.java:6
ClassAnyBaseToDecimalTest
src/test/java/com/thealgorithms/conversions/AnyBaseToDecimalTest.java:10
ClassAnytoAny
A utility class for converting numbers from any base to any other base. This class provides a method to convert a source number from a given base to
src/main/java/com/thealgorithms/conversions/AnytoAny.java:9
ClassAnytoAnyTest
src/test/java/com/thealgorithms/conversions/AnytoAnyTest.java:8
ClassArea
Find the area of various geometric shapes
src/main/java/com/thealgorithms/maths/Area.java:6
ClassAreaTest
@author Amarildo Aliaj
src/test/java/com/thealgorithms/maths/AreaTest.java:12
ClassArithmeticCoding
An implementation of the Arithmetic Coding algorithm. <p> Arithmetic coding is a form of entropy encoding used in lossless data compression. It encod
src/main/java/com/thealgorithms/compression/ArithmeticCoding.java:42
ClassArithmeticCodingTest
src/test/java/com/thealgorithms/compression/ArithmeticCodingTest.java:13
ClassArmstrong
This class checks whether a given number is an Armstrong number or not. An Armstrong number is a number that is equal to the sum of its own digits, ea
src/main/java/com/thealgorithms/maths/Armstrong.java:15
ClassArmstrongTest
@author satyabarghav @since 4/10/2023
src/test/java/com/thealgorithms/maths/ArmstrongTest.java:11
ClassArrayCombination
This class provides methods to find all combinations of integers from 0 to n-1 of a specified length k using backtracking.
src/main/java/com/thealgorithms/backtracking/ArrayCombination.java:10
ClassArrayCombinationTest
src/test/java/com/thealgorithms/backtracking/ArrayCombinationTest.java:14
ClassArrayLeftRotation
Provides a method to perform a left rotation on an array. A left rotation operation shifts each element of the array by a specified number of position
src/main/java/com/thealgorithms/others/ArrayLeftRotation.java:10
ClassArrayLeftRotationTest
src/test/java/com/thealgorithms/others/ArrayLeftRotationTest.java:7
ClassArrayRightRotation
Provides a method to perform a right rotation on an array. A left rotation operation shifts each element of the array by a specified number of positio
src/main/java/com/thealgorithms/others/ArrayRightRotation.java:10
ClassArrayRightRotationTest
src/test/java/com/thealgorithms/others/ArrayRightRotationTest.java:7
ClassAssignmentUsingBitmask
The AssignmentUsingBitmask class is used to calculate the total number of ways tasks can be distributed among people, given specific constraints on wh
src/main/java/com/thealgorithms/dynamicprogramming/AssignmentUsingBitmask.java:14
ClassAssignmentUsingBitmaskTest
src/test/java/com/thealgorithms/dynamicprogramming/AssignmentUsingBitmaskTest.java:10
ClassAtbashCipher
The Atbash cipher is a classic substitution cipher that substitutes each letter with its opposite letter in the alphabet. For example: - 'A' becomes
src/main/java/com/thealgorithms/ciphers/AtbashCipher.java:26
ClassAtbashTest
src/test/java/com/thealgorithms/ciphers/AtbashTest.java:10
ClassAutoCorrelation
Class for linear auto-correlation of a discrete signal @author Athina-Frederiki Swinkels @version 2.0
src/main/java/com/thealgorithms/maths/AutoCorrelation.java:10
ClassAutoCorrelationTest
Test class for AutoCorrelation class @author Athina-Frederiki Swinkels @version 2.0
src/test/java/com/thealgorithms/maths/AutoCorrelationTest.java:15
ClassAutokey
The Autokey Cipher is an interesting and historically significant encryption method, as it improves upon the classic Vigenère Cipher by using the plai
src/main/java/com/thealgorithms/ciphers/Autokey.java:12
ClassAutokeyCipherTest
src/test/java/com/thealgorithms/ciphers/AutokeyTest.java:7
ClassAutomorphicNumber
<a href="https://en.wikipedia.org/wiki/Automorphic_number">Automorphic Number</a> A number is said to be an Automorphic, if it is present in the last
src/main/java/com/thealgorithms/maths/AutomorphicNumber.java:11
ClassAutomorphicNumberTest
src/test/java/com/thealgorithms/maths/AutomorphicNumberTest.java:8
ClassAverage
A utility class for computing the average of numeric arrays. <p>This class provides static methods to calculate the arithmetic mean of arrays of both
src/main/java/com/thealgorithms/maths/Average.java:15
ClassAverageTest
src/test/java/com/thealgorithms/maths/AverageTest.java:12
ClassBFPRT
The BFPRT (Median of Medians) algorithm implementation. It provides a way to find the k-th smallest element in an unsorted array with an optimal worst
src/main/java/com/thealgorithms/others/BFPRT.java:9
ClassBFPRTTest
src/test/java/com/thealgorithms/others/BFPRTTest.java:11
ClassBM25InvertedIndex
src/main/java/com/thealgorithms/searches/BM25InvertedIndex.java:101
ClassBM25InvertedIndexTest
Test Cases for Inverted Index with BM25 @author Prayas Kumar (https://github.com/prayas7102)
src/test/java/com/thealgorithms/searches/BM25InvertedIndexTest.java:16
ClassBSTFromSortedArray
Given a sorted array. Create a balanced binary search tree from it. Steps: 1. Find the middle element of array. This will act as root 2. Use the left
src/main/java/com/thealgorithms/datastructures/trees/BSTFromSortedArray.java:12
ClassBSTFromSortedArrayTest
@author Albina Gimaletdinova on 20/04/2023
src/test/java/com/thealgorithms/datastructures/trees/BSTFromSortedArrayTest.java:9
ClassBSTIterative
<h1>Binary Search Tree (Iterative)</h1> <p> An implementation of BST iteratively. Binary Search Tree is a binary tree which satisfies three propertie
src/main/java/com/thealgorithms/datastructures/trees/BSTIterative.java:19
ClassBSTIterativeTest
@author Albina Gimaletdinova on 23/04/2023
src/test/java/com/thealgorithms/datastructures/trees/BSTIterativeTest.java:9
ClassBSTRecursive
<h1>Binary Search Tree (Recursive)</h1> An implementation of BST recursively. In recursive implementation the checks are down the tree First root is
src/main/java/com/thealgorithms/datastructures/trees/BSTRecursive.java:22
ClassBSTRecursiveGeneric
<h1>Binary Search Tree (Recursive) Generic Type Implementation</h1> <p> A recursive implementation of generic type BST. Reference: <a href="https://
src/main/java/com/thealgorithms/datastructures/trees/BSTRecursiveGeneric.java:18
ClassBSTRecursiveGenericTest
Unit tests for BSTRecursiveGeneric class. Covers insertion, deletion, search, traversal, sorting, and display. Author: Udaya Krishnan M GitHub: https
src/test/java/com/thealgorithms/datastructures/trees/BSTRecursiveGenericTest.java:18
next →1–100 of 1,826, ranked by callers