# Algorithms

• Core Java

## Vigenère Cipher in Java

The Vigenère cipher is a classic method of encryption that utilizes a keyword to create a more complex substitution, making…

• Software Development

## Navigating Efficiency and Perfection: An Exploration of Alternative Approaches to Dijkstra’s Algorithm

In this comprehensive article, we embark on a journey through the intricacies of Dijkstra’s Algorithm, a fundamental and powerful tool…

• Software Development

## Resolve coreference using Stanford CoreNLP

Coreference resolution is the task of finding all expressions that refer to the same entity in a text. Stanford CoreNLP…

• Core Java

## The Knapsack problem

I found the Knapsack problem tricky and interesting at the same time. I am sure if you are visiting this…

• Software Development

## Fibonacci and Lucas Sequences

This posts touches on three of my favorite topics – math, transferring knowledge through experience (tutorial unit tests) and the…

• Core Java

## Java implementation of Optimal String Alignment

For a while, I’ve used the Apache Commons lang StringUtils implementation of Levenshtein distance.  It implements a few well known…

• Software Development

## Creating a price model using k-Nearest Neighbours + Genetic Algorithm

Chapter 8 of Programming Collective Intelligence (PCI) explains the usage and implementation of the k-Nearest Neighbours algorithm. (k-NN). Simply put: k-NN is…

• Core Java

## Quicksorting – 3-way and Dual Pivot

It’s no news that Quicksort is considered one of the most important algorithms of the century and that it is…

• Core Java

## Java: Mergesort using Fork/Join Framework

The objective of this entry is to show a simple example of a Fork/Join RecursiveAction, not to delve too much…