Tuesday, March 1, 2011

Is there an overview of the most common algorithms?

I'm looking for an overview of algorithms, you need every now and then. If there is a problem, you either do reinvent the wheel or spend a lot of time searching for an algorithm to a common known problem which has been solved a hundred times before.

Best one would be a website with sorted algorithms, like:

  • Compression
    • ...
  • Decryption
    • ...
  • Encryption
    • Symetric
      • ...
    • ASymetric
      • ...
  • Search
    • ...
  • Sort
    • Bubble Sort
    • Quicksort
    • ...

I think you get a feeling what I mean.

What pages do you know?

From stackoverflow
  • How about wikipedia's list of algorithms ?

    Peter : Sometimes I'm scared that an answer standing right behind me is going to bite me, thx.
    Gamecat : Great, thanx ;-) +1
  • http://www.algosort.com/

  • How about Dictionary of Algorithms and Data Structures from the NIST?

    Stephen Denne : This seems more useful for finding out what a referenced algorithm is, than (for example) trying to find out what encryption algorithms there may be.
    Pete Kirkham : It has an index by area too http://www.nist.gov/dads/termsArea.html#crypt
  • You also have a good Wikibook on Algorithms, referred by many algorithms articles.

  • This book is excellent:

    The Algorithm Design Manual

    This has been linked in other answers but is a good resource:

    Skiena's Algorithms Lectures

    MarkJ : As well as The Algorithm Design Manual, there's the online Stony Brook Algorithm Repository managed by the author, with the same catalogue structure as the book http://www.cs.sunysb.edu/~algorith/
  • There is a series of books, "The Art Of Computer Programming" which is quite comprehensive, if you want something in paper.

    wikipedia entry

  • I would strongly recommend the book "Algorithm Design Manual" by Steven Skiena. It has the catalog structure you are mentioning.

    MarkJ : As well as The Algorithm Design Manual, there's the online Stony Brook Algorithm Repository managed by the author, with the same catalogue structure as the book http://www.cs.sunysb.edu/~algorith/
  • CLRS.

    That is to say, the "Introduction to Algorithms" textbook by Cormen, Leiserson, Rivest and Stein.

    It will give you a good overview of the most significant algorithms for most common purposes, along with a solid analysis.

    A simple website/list would be a disservice if it inspired too-hasty "cut and paste" selection without a solid understanding.

  • In addition to seconding The Algorithm Design Manual, I've had a very positive experience with this book:

    Algorithms in a Nutshell

    MarkJ : As well as The Algorithm Design Manual, there's the online Stony Brook Algorithm Repository managed by the author, with the same catalogue structure as the book http://www.cs.sunysb.edu/~algorith/
  • As well as The Algorithm Design Manual, there's the online Stony Brook Algorithm Repository managed by the author, which links to implementations. Both have an excellent catalogue structure.

0 comments:

Post a Comment