## 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-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