15 projects tagged "Algorithms"
markov.sql implements third order (and lower) model Markov Chains, including training and generation, in pure SQL(ite). The source code archive also contains a pre-trained SQL dump with models based on the 1990 US Census Bureau data sets for first and last names, and an excerpt of the 2012 US tax office corporation names.
The "Sound of Sorting" is a demo program containing many integer sorting algorithms. The algorithms are visualized in real time and augmented with sound effects, which are based on the values being compared. Animation speed and sound sustain can be customized while the algorithm is running. The visualization also highlights the algorithm's internal workings, which makes the demo program very useful for teaching sorting algorithms in an undergraduate computer science course. The program also counts the number of comparisons done by an algorithm, which can then be compared to the analytically derived value. The demo is implemented using the cross-platform toolkits wxWidgets and SDL, and can be executed on Windows, Linux, and Mac.
nedtries is a portable in-place bitwise binary Fredkin trie algorithm that allows for near constant time insertions, deletions, finds, closest fit finds, and iteration. It is approximately 50-100% faster than red-black trees and up to 20% faster than O(1) hash tables. It provides implementations as C macros, C++ templates, and as a C++ STL compatible associative container.
BS is a data structures library. It features fixed size, random access sequences. The sequences are constructed over B-trees. Complexity for most single item operations is about O(logN). The sequences are three to five times faster over random access BST-based sequences, while having better memory usage characteristics.
ExternalSort is a class that can sort large files similar to the Unix sort command. It can read the file to be sorted in small buckets associated with temporary files to not exceed the configured PHP memory limits. The buckets are sorted individually and then merged to produce the final sorted output. The class provides command line interface options so it can be executed as a command from a shell.
Zebra_MPTT is a PHP class that provides an implementation of the modified preorder tree traversal algorithm. It provides methods for adding nodes anywhere in the tree, deleting nodes, moving and copying nodes around the tree, and for retrieving information about the nodes. It uses table locks to ensure that database integrity is always preserved and that concurrent MySQL sessions don’t compromise data integrity. A caching mechanism ensures that regardless of the type or the number of retrieval operations, the database is read only once per script execution.
php mudnames is a PHP class that can generate random names for characters used in role playing games such as multi-user dungeon (MUD) games. Although the names do not mean anything, they sound very much like typical names of characters that you often see in this kind of game. It can retrieve text data from one of several dictionary files. The dictionary data is used to generate random names based on selected capabilities and used particles.