## java-balanced-binary-tree

How to Determine if a Binary Tree is Balanced 1. Overview Trees are one of the most important data structures in computer science. We’re usually interested in a balanced tree, because of its valuable properties. Their structure allows performing operations like queries, insertions, deletions in logarithmic time. In this tutorial,… Continue Reading java-balanced-binary-tree

## java-knapsack

Knapsack Problem Implementation in Java 1. Introduction The knapsack problem is a combinatorial optimization problem that has many applications. In this tutorial, we’ll solve this problem in Java. 2. The Knapsack Problem In the knapsack problem, we have a set of items. Each item has a weight and a worth… Continue Reading java-knapsack

## java-finite-automata

Validating Input with Finite Automata in Java 1. Overview If you’ve studied CS, you’ve undoubtedly taken a course about compilers or something similar; in these classes, the concept of Finite Automaton (also known as Finite State Machine) is taught. This is a way of formalizing the grammar rules of languages.… Continue Reading java-finite-automata

## spring-data-elasticsearch-test

Introduction to Spring Data Elasticsearch Algorithms Exception 1. Overview In this article we’ll explore the basics of Spring Data Elasticsearch in a code-focused, practical manner. We’ll show how to index, search, and query Elasticsearch in a Spring application using Spring Data – a Spring module for interaction with a popular… Continue Reading spring-data-elasticsearch-test

## algorithm-quicksort

An Overview of QuickSort Algorithm 1. Introduction In this article, we’re going to look at the quicksort algorithm and understand how it works. Quicksort is a divide-and-conquer algorithm. This means each iteration works by dividing the input into two parts and then sorting those, before combining them back together It… Continue Reading algorithm-quicksort

## java-enum-simple-state-machine

Implementing Simple State Machines with Java Enums Algorithms Java 1. Overview In this tutorial, we’ll have a look at State Machines and how they can be implemented in Java using Enums. We’ll also explain the advantages of this implementation compared to using an interface and a concrete class for each… Continue Reading java-enum-simple-state-machine

## java-solve-maze

A Maze Solver in Java 1. Introduction In this article, we’ll explore possible ways to navigate a maze, using Java. Consider the maze to be a black and white image, with black pixels representing walls, and white pixels representing a path. Two white pixels are special, one being the entry… Continue Reading java-solve-maze

## java-calculate-circle-area

Calculate the Area of a Circle in Java 1. Overview In this quick tutorial, we’ll illustrate how to calculate the area of a circle in Java. We’ll be using the well-known math formula: r^2 * PI. 2. A Circle Area Calculation Method Let’s first create a method that will perform the… Continue Reading java-calculate-circle-area

## java-merge-sort

Merge Sort in Java 1. Introduction In this tutorial, we’ll have a look at the Merge Sort algorithm and its implementation in Java. Merge sort is one of the most efficient sorting techniques and it’s based on the “divide and conquer” paradigm. 2. The Algorithm Merge sort is a “divide… Continue Reading java-merge-sort

## java-ant-colony-optimization

Ant Colony Optimization 1. Introduction The aim of this series is to explain the idea of genetic algorithms and show the most known implementations. In this tutorial, we’ll describe the concept of the ant colony optimization (ACO), followed by the code example. 2. How ACO Works ACO is a genetic… Continue Reading java-ant-colony-optimization