background preloader


Facebook Twitter

List of Algorithms. A complete list of all major algorithms (300), in any domain.

List of Algorithms

The goal is to provide a ready to run program for each one, or a description of the algorithm. Programming languages include Java, JavaScript and PHP, C, C++ either in direct form or generated from a Scriptol source. Automata Powerset construction. Algorithm to convert nondeterministic automaton to deterministic automaton. Artificial intelligence Alpha-beta. Computer vision Epitome. Genetic algorithms They uses three operator. selection (choose solution), reproduction (use choosen solutions to construct other ones), replacement (replace solution if better). Neural networks Hopfield net. Machine learning PAVA (Pool-Adjacent-Violators Algorithm). Bioinformatics and Cheminformatics Needleman-Wunsch. Compression Lossless compression algorithms Burrows-Wheeler transform. Entropy encoding Coding scheme that assigns codes to symbols so as to match code lengths with the probabilities of the symbols . Huffman coding. Linear predictive coding. You Don’t Know Anything About Regular Expressions: A Complete Guide.

Regular expressions can be scary...really scary.

You Don’t Know Anything About Regular Expressions: A Complete Guide

Fortunately, once you memorize what each symbol represents, the fear quickly subsides. If you fit the title of this article, there's much to learn! Let's get started. The key to learning how to effectively use regular expressions is to just take a day and memorize all of the symbols. This is the best advice I can possibly offer. . Yep - it's not fun, but just memorize them.

You can be certain that you'll want to rip your hair out at one point or another when an expression doesn't work, no matter how much it should - or you think it should! The next step is to learn how to actually use these symbols! In this final section, we'll review a handful of the most important JavaScript methods for working with regular expressions.

This one accepts a single string parameter and returns a boolean indicating whether or not a match has been found. You're most likely already familiar with the split method. The code above will alert a single "e. " Introduction to Algorithms. Computer Programming Algorithms Directory.


Damn Cool Algorithms: Levenshtein Automata. Posted by Nick Johnson | Filed under python, coding, tech, damn-cool-algorithms In a previous Damn Cool Algorithms post, I talked about BK-trees, a clever indexing structure that makes it possible to search for fuzzy matches on a text string based on Levenshtein distance - or any other metric that obeys the triangle inequality.

Today, I'm going to describe an alternative approach, which makes it possible to do fuzzy text search in a regular index: Levenshtein automata. Introduction The basic insight behind Levenshtein automata is that it's possible to construct a Finite state automaton that recognizes exactly the set of strings within a given Levenshtein distance of a target word. We can then feed in any word, and the automaton will accept or reject it based on whether the Levenshtein distance to the target word is at most the distance specified when we constructed the automaton. Of course, if that were the only benefit of Levenshtein automata, this would be a short article. Indexing.