Computer Programming Algorithms Directory

來源:互聯網
上載者:User

http://www.algosort.com/

 

Computer Programming Algorithms Directory

Welcome to my computer programming algorithms directory. I am hoping
to provide a comprehensive directory of web sites that detail
algorithms for computer programming problems. If you know of any web
sites that describe an algorithm (or multiple algorithms), please send
me an e-mail
.

 

Encryption Algorithms
  • Advanced Encryption Standard (AES), Data Encryption Standard (DES), Triple-DES and Skipjack Algorithms

    - Offers descriptions of the named encryption algorithms.
  • Blowfish

    - Describes the Blowfish encryption algorithm. Offers source code for a variety of platforms.
  • KremlinEncrypt

    - Cryptography site provides an overview of cryptography algorithms and links to published descriptions where available.
  • PowerBASIC Crypto Archives

    - Offers PowerBASIC source code for many algorithms including:

    • Hashing
      - RIPEMD-160, MD5, SHA-1, SHA-256, CRC-16, CRC-32, Adler-32, FNV-32, ELF-32
    • Encryption
      - RSA-64, Diffie-Hellman-Merkle Secure Key Exchange, Rijndael, Serpent,
      Twofish, CAST-128, CAST-256, Skipjack, TEA, RC4, PC1, GOST, Blowfish,
      Caesar Substitutional Shift, ROT13
    • Encoding
      - Base64, MIME Base64, UUEncode, yEnc, Neuronal Network, URLEncode, URLDecode
    • Compression
      - LZ78, LZSS, LZW, RLE, Huffman, Supertiny
    • Psuedo-Random Number Generation (PRNG)
      - Mersenne Twister Number Generator, Cryptographic PRNG, MPRNG, MOAPRNG, L'Ecuyer LCG3 Composite PRNG, W32.SQL-Slammer
  • TEA - Tiny Encryption Algorithm

    - Describes the TEA encryption algorithm with C source code.
  • xICE

    - Has links towards the bottom of the page to the description of the
    xice encryption algorithm as well as the xice software development kit
    which contains the algorithm's full source code in C++, ASP, JScript,
    Ruby, and Visual Basic 6.0.
Genetic Algorithms
  • Artificial Life

    - Offers executable and source for ant food collection and the travelling salesman problems using genetic algorithms
  • Genetic Ant Algorithm

    - Source code for a Java applet that implements the Genetic Ant Algorithm based upon the model given in Koza, Genetic Programming
    , MIT Press
  • Introduction to
    Genetic Algorithms

    - Introduces fundamentals, offers Java applet examples
  • Jaga

    - Offers a free, open source API for implementing genetic algorithms (GA) and genetic programming (GP) applications in Java
  • SPHINcsX

    - Describes a methodology to perform a generalized zeroth-order two-
    and three-dimensional shape optimization utilizing a genetic algorithm
GIS (Geographic Information Systems) Algorithms
  • Efficient Triangulation Algorithm Suitable for Terrain Modelling

    - Describes algorithm and includes links to source code for various languages
  • Prediction of Error and Complexity in GIS Algorithms

    - Describes algorithms for GIS sensitivitiy analysis
  • Point in Polygon Algorithm

    - Describes algorithm
Sorting Algorithms
  • Andrew Kitchen's Sorting Algorithms

    - Describes parallel sorting algorithms:

    • Odd-Even Transposition Sort has a worst case time of O(n)
      , running on n processors. Its absolute speed up is O(log n)
      , so its efficiency is O((log n)/n)
    • Shear Sort has a worst case time of O(n½
      log n)

      , running on n processors. Its absolute speed up is O(n½
      )

      , so its efficiency is O(1/n½
      )
  • Ariel Faigon's Library of Sorting Algorithms

    - C source code for a variety of sorting algorithms including Insertion
    Sort, Quick Sort, Shell Sort, Gamasort, Heap Sort and Sedgesort (Robert
    Sedgewick quicksort optimization)
  • Flash Sort

    - Describes the FlashSort algorithm which sorts n elements in O(n)
    time
  • Michael Lamont's Sorting Algorithms

    - Describes common sorting algorithms:

    • O(n²)
      Sorts - bubble, insertion, selection and shell sorts
    • O(n log n)
      Sorts - heap, merge and quick sorts
  • Sequential and Parallel Sorting Algorithms

    - Describes many sorting algorithms:

    • Quicksort
    • Heapsort
    • Shellsort
    • Mergesort
    • Sorting Networks
    • Bitonic Sort
    • Odd-Even Mergesort
    • LS3-Sort
    • 4-way Mergesort
    • Rotate Sort
    • 3n
      -Sort
    • s^2-way Mergesort
Search Algorithms
  • Exact String Matching Algorithms

    - Details 35 exact string search algorithms.
  • Finding a Loop in a Singly Linked List

    - Outlines several methods for identifying loops in a singly linked list.
  • Fibonaccian search

    - Describes an O(log n)
    search algorithm for sorted arrays that is faster than a binary search for very large arrays.
Tree Algorithms
  • B-Trees: Balanced Tree Data Structures

    - Introduction to B-Trees. Describes searching, splitting and inserting algorithms.
  • MinHeap: C++ Template Implementation of Minimum Heap Algorithm
Computational Geometry Algorithms
  • GeoLib

    - Downloadable Gnu GPL (free for non-commercial use) library of C++
    computational geometry algorithms. Included in the library is a class
    representing a latitude and longitude position which provides
    conversion to Cartesian co-ordinates allowing Geospatial polygon
    representation.
  • CGAL

    - Offers open source C++ library of computational geometry algorithms.
  • FastGEO

    - Offers source code for a library of computational geometry algorithms
    such as geometrical primitives and predicates, hull construction,
    triangulation, clipping, rotations and projections using the Object
    Pascal language.
  • Wykobi

    - FastGEO library ported to C++.
Phonetic Algorithms
  • Lawrence Philips' Metaphone Algorithm

    - Describes an algorithm which returns the rough approximation of how
    an English word sounds. Offers a variety of source code listings for
    the algorithm.
  • Soundex Algorithms

    - Describes the NYSIIS VS Soundex and R. C. Russell's soundex algorithms.
Project Management Algorithms
  • Calculations for Critical Path Scheduling

    - Describes the algorithms for calculating critical paths with both ADM and PDM networks.
  • Resource Leveling Using the Minimum Moment Heuristic

    - Offers a Windows 3.1 download that includes a .PDF document describing the algorithm.
  • Project Scheduling Problem Solver

    - Heuristic based library for supporting research on the Resource
    Constrained Scheduling Problem. Provides an OOP API for the
    visualization, representation and solving of RCPSP.
  • Resource-Constrained Project Scheduling

    - (.PDF) Describes several algorithms for resource leveling:

    • Basic Single Mode RCPSP
    • Basic Multi-Mode RCPSP
    • Stochastic RCPSP
    • Bin Packing related RCPSP
    • Multi-resource constrained project scheduling problem (MRCPSP)
Miscellaneous Algorithms
  • AI Horizon

    - Has a variety of algorithms, from basic computer science data
    structures such as 2-3 trees to AI-related algorithms such as minimax
    and a discussion of machine learning algorithms.
  • CS Animated

    - Describes a variety of algorithms using narrated slideshow presentations (videos).
  • Global Optimization Algorithms - Theory and Application

    - This is a free ebook (600+ page .PDF file) that focuses on
    evolutionary computation by discussing evolutionary algorithms, genetic
    algorithms, genetic programming, learning classifier systems, evolution
    strategy, differential evolution, particle swarm optimization, and ant
    colony optimization. It also elaborates on meta-heuristics like
    simulated annealing, hill climbing, tabu search, and random
    optimization. It contains many pseudocode descriptions for the
    algorithms.
  • Hash Algorithms

    - Overview and source code (in C, Pascal and Java) for many general purpose hashing algorithms.
  • Porter Stemming Algorithm

    - Describes a process for removing the commoner morphological and
    inflexional endings from words in English. Its main use is as part of a
    term normalisation process that is usually done when setting up
    Information Retrieval systems.
  • Rubik's Cube

    - Solves a Rubic's Cube using the BestFast search algorithm and profile tables.
  • Simulated Annealing

    - The fundamental idea is to allow moves resulting in solutions of
    worse quality than the current solution (uphill moves) in order to
    escape from local minima. The probability of doing such a move is
    decreased during the search.
  • The Stony Brook Algorithm Repository

    - Offers a collection of algorithm implementations for over seventy of
    the most fundamental problems in combinatorial algorithms:

    • Data Structures
      - Dictionaries, Priority Queues, Suffix Trees and Arrays, Graph Data Structures, Set Data Structures, Kd-Trees
    • Numerical Problems
      - Solving Linear Equations, Bandwidth Reduction, Matrix Multiplication,
      Determinants and Permanents, Linear Programming/Simplex Method, Random
      Number Generation, Factoring and Primality Testing, Arbitrary Precision
      Arithmetic, Knapsack Problem, Discrete Fourier Transform
    • Combinatorial Problems
      - Sorting, Searching, Median and Selection, Permutations, Subsets,
      Partitions, Graphs, Calendrical Calculations, Job Scheduling,
      Satisfiability
    • Graph Problems
      - Polynomial
      Time Problems (Connected Components, Topological Sorting, Minimum
      Spanning Tree, Shortest Path, Transitive Closure and Reduction,
      Matching, Eulerian Cycle / Chinese Postman, Edge and Vertex
      Connectivity, Network Flow, Drawing Graphs Nicely, Drawing Trees,
      Planarity Detection and Embedding)
    • Graph Problems
      - Hard Problems (Clique, Independent Set, Vertex Cover, Traveling
      Salesman Problem, Hamiltonian Cycle, Graph Partition, Vertex Coloring,
      Edge Coloring, Graph Isomorphism, Steiner Tree, Feedback Edge/Vertex Set
    • Computational Geometry
      - Robust Geometric Primitives, Convex Hull, Triangulation, Voronoi
      Diagrams, Nearest Neighbor Search, Range Search, Point Location,
      Intersection Detection, Bin Packing, Medial-Axis Transformation,
      Polygon Partitioning, Simplifying Polygons, Shape Similarity, Motion
      Planning, Maintaining Line Arrangements, Minkowski Sum
    • Set and String Problems
      - Set Cover, Set Packing, String Matching, Approximate String Matching,
      Text Compression, Cryptography, Finite State Machine Minimization,
      Longest Common Substring, Shortest Common Superstring
  • EasyAlgorithm

    - Provides C source code for many basic algorithms covering data structures, containers, sorting and searching.
  • Introduction to Neural Networks

    - Describes the Back Propagation algorithm for neural networks.
  • NIST Dictionary of Algorithms and Data Structures

    - Some entries have links to implementations.
Other Stuff
  • Lenovo Coupons

    - Need a new computer? This page could save you a couple hundred dollars on a Lenovo brand computer.
  • DirFly Directory

    - A directory of web sites categorized by subject.
  • Web Directory

    - Another directory of web sites categorized by subject.

 

 

ANN: A Library for Approximate Nearest Neighbor Searching

 

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.