## Implementing a generic Priority Queue in C (using heaps)

In Computer Science, a Priority Queue is an abstract data type, very similar to a normal Queue, but with a twist: every element has a priority attached to it...

In Computer Science, a Priority Queue is an abstract data type, very similar to a normal Queue, but with a twist: every element has a priority attached to it...

Description

In the last article I’ve described a recursive version of the Merge Sort Algorithm . Of course every recursive algorithm can be written in an iterative manner.

In computer science many algorithms are recursive by nature, and they usually follow an approach called divide-and-conquer.

In the last article I’ve described Euclid’s algorithm for finding the greatest common divisor of two given numbers.

Binary GCD also known as Stein’s Algorithm is an algorithm that computes the greatest common divisor of two (positive) numbers . Discovered in 1967 by the Is...

Recently I’ve started to implement (or reimplement) the most common algorithms a software developer should know . One of the nicest books I found on this top...

If you’ve tried to write your own calculator (something in the style of calculator) you’ve probably had to build a simple converter for your mathematical exp...

This tutorial assumes the reader is familiar with C macros, C pointers, and basic data-structures.

In my last two articles I’ve tried to explore some fundamental topics in linear algebra: QR Decomposition, linear transformations and Eigenvalues/Eigenvec...

This article is in early editing. It may suffer changes or corrections. If you spot any error please contact me.

Table of Contents

In Computer Science, a Priority Queue is an abstract data type, very similar to a normal Queue, but with a twist: every element has a priority attached to it...

In the last article I’ve described Euclid’s algorithm for finding the greatest common divisor of two given numbers.

Binary GCD also known as Stein’s Algorithm is an algorithm that computes the greatest common divisor of two (positive) numbers . Discovered in 1967 by the Is...

Recently I’ve started to implement (or reimplement) the most common algorithms a software developer should know . One of the nicest books I found on this top...

This tutorial assumes the reader is familiar with C macros, C pointers, and basic data-structures.

Following my previous article, I wanted to expand on the capabilities of the mapneat library.

One of the most common scenarios I had to solve during my Software Engineering career is to manipulate data, apply some logic on top, eventually change the w...

Description

In the last article I’ve described a recursive version of the Merge Sort Algorithm . Of course every recursive algorithm can be written in an iterative manner.

In computer science many algorithms are recursive by nature, and they usually follow an approach called divide-and-conquer.

The code from this article was refactored on 2021-01-03. It now makes use of the “Try with resources” Java feature.

If you’ve tried to write your own calculator (something in the style of calculator) you’ve probably had to build a simple converter for your mathematical exp...

In my last two articles I’ve tried to explore some fundamental topics in linear algebra: QR Decomposition, linear transformations and Eigenvalues/Eigenvec...

This article is in early editing. It may suffer changes or corrections. If you spot any error please contact me.

Table of Contents

In my last two articles I’ve tried to explore some fundamental topics in linear algebra: QR Decomposition, linear transformations and Eigenvalues/Eigenvec...

pysert (with lowercase ‘p’) is a python script capable of generating random SQL data (INSERTS) from predefined templates . Actually, it can generate all kind...

Following my previous article, I wanted to expand on the capabilities of the mapneat library.

One of the most common scenarios I had to solve during my Software Engineering career is to manipulate data, apply some logic on top, eventually change the w...

A list of best practices when writing bash scripts: