What is greedy algorithm? - Definition from WhatIs.com
Part of the Computing fundamentals glossary:

A greedy algorithm is a mathematical process that looks for simple, easy-to-implement solutions to complex, multi-step problems by deciding which next step will provide the most obvious benefit.

Such algorithms are called greedy because while the optimal solution to each smaller instance will provide an immediate output, the algorithm doesn’t consider the larger problem as a whole. Once a decision has been made, it is never reconsidered.

Greedy algorithms work by recursively constructing a set of objects from the smallest possible constituent parts. Recursion is an approach to problem solving in which the solution to a particular problem depends on solutions to smaller instances of the same problem. The advantage to using a greedy algorithm is that solutions to smaller instances of the problem can be straightforward and easy to understand. The disadvantage is that it is entirely possible that the most optimal short-term solutions may lead to the worst possible long-term outcome.

Greedy algorithms are often used in ad hoc mobile networking to efficiently route packets with the fewest number of hops and the shortest delay possible. They are also used in machine learning, business intelligence (BI), artificial intelligence (AI) and programming.

See also: KISS principle, Ockham's razor

 

This was last updated in February 2015
Posted by: Margaret Rouse

Related Terms

Definitions

  • deprecated

    - In dictionaries, deprecated is a term used to indicate a pronunciation or usage that is acknowledged but discouraged. (WhatIs.com)

  • codebase (code base)

    - A codebase (sometimes spelled as two words, code base) is the complete body of source code for a given software program or application. (WhatIs.com)

  • hard error

    - A hard error is an issue in RAM that results from a permanent physical flaw in the module caused by a hardware failure or defect. (WhatIs.com)

Glossaries

  • Computing fundamentals

    - Terms related to computer fundamentals, including computer hardware definitions and words and phrases about software, operating systems, peripherals and troubleshooting.

  • Internet applications

    - This WhatIs.com glossary contains terms related to Internet applications, including definitions about Software as a Service (SaaS) delivery models and words and phrases about web sites, e-commerce ...

Ask a Question. Find an Answer.Powered by ITKnowledgeExchange.com

Ask An IT Question

Get answers from your peers on your most technical challenges

Ask Question
  • Can a greedy algorithm be used for cloud storage?

    A greedy algorithm is an algorithm that seeks to produce the easiest solution at each step of a problem. Greedy algorithms can be used for cloud storage. One common way in which greedy algorithms a...

Tech TalkComment

Share
Comments

    Results

    Contribute to the conversation

    All fields are required. Comments will appear at the bottom of the article.