# Big O Notation and the Magic of Time Complexity

## A guide on how to compare algorithms’ behaviour

This article was first published on April 15, 2020 on my personal blog here: https://www.andreadiotallevi.com/blog/big-o-notation-and-the-magic-of-time-complexity.

Have you ever wondered how your algorithm would perform if you drastically increase the input data set? The concept programmers use to compare algorithms’ behaviours is the big-O mathematical notation.

Big-O notation is used in Computer Science to describe the worst-case performance or complexity of an algorithm, ignoring low-level details such as the implementation programming language, the hardware the algorithm runs on, or the instruction set of the given CPU.

In this article I will explore the fundamental components of algorithm complexity analysis, describe how…

# How to Incrementally Develop an Algorithm using Test Driven Development — The Prime Factors Kata

This article was first published on February 20, 2020 on my personal blog here: https://www.andreadiotallevi.com/blog/how-to-incrementally-develop-an-algorithm-using-test-driven-development.

In the world of software development, test-driven development (TDD) is a discipline where failing tests are written first, and only then is the actual software code created, aiming to pass the newly-generated tests.

In this article, I will explore the fundamental components of test-driven development, with an example of how to incrementally develop an algorithm using the TTD cycle.

The example I will use is the prime factors kata, which challenges you to find all the prime factors of a given integer. …

## Andrea Diotallevi

Software engineer, architect, pianist, passionate about algorithms, web technologies and learning new skills.

Get the Medium app