
Big O Notation
Big O notation is a tool we use to estimate how long a program or an algorithm will run. On this blog we've covered a lot of algorithms but we only touched on the big O notation. If you have a degree...

Big O notation is a tool we use to estimate how long a program or an algorithm will run. On this blog we've covered a lot of algorithms but we only touched on the big O notation. If you have a degree...

[caption id="attachment_2255" align="alignright" width="300"] image source: wikipedia.org[/caption] Enigma Machine was a famous cipher machine that the germans used during the World War 2. In its...

Bellman-Ford algorithm is a very versatile algorithm for finding the shortest path on an edge weighted directed graph. It differs from Dijkstra's algorithm in that it can handle the negative cycles...

Edge weighted digraphs can be used for a large number of things. In some cases we want to know if there's a directed cycle between the nodes (or vertices). For example, if we're working on a...

Last week we've talked about edge weighted digraphs in swift. This week we'll talk about a famous algorithm that's using that data structure. Dijkstra's algorithm is a simple and well-known algorithm...

Long long time ago, when I was a student, I wrote a paper on genetic algorithms. This is a really exiting topic for me and I always wanted to create something for iOS using genetic algorithms. This...

Early this year Dejan wrote an amazing article about sorting algorithms. In this article he was comparing common sorting algorithms with the swift sorting algorithm. What we could observe from his...

There are more than a few search algorithms. Today we'll examine one of them, the Binary Search Algorithm, and we'll implement this algorithm using an array extension in swift. We'll also compare the...

Sorting algorithms are an important feature of modern computing, and in this article we'll examine some of the most common sorting algorithms in use today. Implementations of these algorithms will be...

Snakes and Ladders is a popular game that we all played as children. For those of you who are new to the game, it's a simple game played on a board that consists of 10x10 squares. The player moves by...