Tech moves fast! Stay ahead of the curve with Techopedia!
Join nearly 200,000 subscribers who receive actionable tech insights from Techopedia.
In its purest sense, an algorithm is a mathematical process to solve a problem using a finite number of steps.
In the world of computers, an algorithm is the set of instructions that defines not just what needs to be done but how to do it.
Probably the best way to understand an algorithm is to think of it as a recipe. There are many ways to bake cookies, but by following a recipe a baker knows to first preheat the oven, then measure out the flour, add butter, chocolate chips, etc. until the desired cookies are complete.
Using algorithms, a programmer or computer scientist can tell his machine to query database A for last month’s sales figures, compare them to the prior month and the same month last year, and then display it in a bar graph.
Mix multiple algorithms together and you have a working computer program.
As can be expected, there are numerous types of algorithms for virtually every kind of mathematical problem there is to solve. There are:
There are also various algorithms named after the leading mathematicians who invented them:
There are also those named after the specific problem they solve, such as:
In the computing field, most algorithms tend to solve data management and analysis problems.
(According to Ohio State University)
Arranging data in an efficient and useful manner. These include quick sort, merge sort, counting sort and others;
Finding key data in sorted data sets. The most common is the binary sort, but there are also depth, breadth and first searches used by web applications;
Similar to search but with an indexing and key ID component. Hashing provides superior results because it assigns a key to certain data;
Converts larger, complex problems into series of smaller problems;
Also known as binary exponentiation, EbS speeds up the calculation of large integers, polynomials, square matrices and other complex problems;
Designed to find patterns in large data sets using predefined terms and restrictions;
Determines prime numbers either deterministically or probabilistically; mostly used in cryptography.
Networking also relies heavily on algorithms, which govern everything from packet routing and traffic management to security and encryption. Traditionally, routing algorithms were largely static in that they established fixed points of network activity.
Recently, however, network providers have shifted toward more adaptive algorithms that can make changes on the fly in response to traffic or topology considerations.
Algorithms are at the heart of just about everything in the digital world, from high-speed stock trading to automated dishwashers.
As technology becomes even more ubiquitous and we find ourselves relying on smart cars, smart homes, smart cities and even smart bodies, it may seem like we are interacting with an entirely new form of consciousness on the planet, one that walks, talks and thinks.
In reality, though, it’s just lots of numbers running through lots of algorithms.