Introduction to Algorithms/Common Algorithms

This is a lesson in in the course, Introduction to Algorithms, which is a part of The School of Computer Science

Objective

edit


Algorithms commonly studied

edit

Many algorithms are currently under intense study for various reasons. They include:

  • Sorting algorithms. A sorting algorithm will take a set of objects and arrange the objects in ascending (or descending) order. While this is a simple problem and there are many existing algorithms to tackle this problem efficiently, new algorithms (and problems with older ones) are published all the time.
  • Artificial Intelligence. AI algorithms typically accept an input representing its environment (eg. a chess board) and try to find some legal move to respond favourably to the environment or an opponent (eg. calculating a good chess move). Today modern chess AIs can beat even professionals and regularly challenge world grandmasters to intense, decisive matches. Still, some simple board games remain impervious to attack. AI has also been recently employed in anti-fraud software and email spam filters.
  • Numerical Computation. More and more mathematicians and computer scientists are using computers to do research, eg. to collect data, test new theories or process experimental results. Some researchers have even tried to use computers to prove theorems! (A proof to the four-color theorem was, controversially, completely produced by computer.) Ever faster algorithms need to be invented to cope with this massive increase in demand.

Assignments

edit

Completion status: this resource is a stub, which means that pretty much nothing has been done yet.