Algorithms
From Biomatics.org
An algorithm is a prescribed sequence of steps which solves a given problem or performs some process. Computer scientists draw flowcharts to represent the algorithm. Algorithms thus have geometrical, pictorial, topological structure. Recognizing these universal structures should help in reverse engineering biological circuits.
Contents 
Basic elements of algorithms
Data
Variables
Assignment
Control structures
If Then
Goto
Fornext loops
Do While
Recursion
Algorithm Templates
Template Library
Genetic Algorithms
Hypercube Algorithms
Quadtree Algorithms
Hexagonal algorithms
Hexagonal Sampling and Processing of Images
https://en.wikipedia.org/wiki/Hexagonal_sampling
Two dimensional (2D) image sampling has been investigated. Hexagonal sampling, where the samples on alternate rows are offset, can require fewer samples per unit area to give equal high frequency information to normal square sampling. Additionally some processing algorithms including monochrome edge detectors and binary skeletonisers have been shown to operate more efficiently in their hexagonal variant (50% computation saving). The hexagonal sampling scheme is also being applied to height measurement on machined surfaces.
Molecular Algorithms

Molecular Biology (13)

Computational (14)

Molecular Dynamics (10)


Chemistry (9)


Bioinformatics (8)

Science (8)

Protein (9)

Docking (6)
List of algorithms
The following is a list of the algorithms described in Wikipedia. See also the list of data structures, list of algorithm general topics and list of terms relating to algorithms and data structures.
If you intend to describe a new algorithm, please read algorithms on Wikipedia first, then add a link to your article and a oneline description here.
Image and a Representation of its Quadtree Decomposition
Area Algorithm
· Measure the area of A on the map:
o Traverse the tree and add those leafs coded A, weighted by the area at the level of the leaf
Overlay Algorithm
· To overlay two maps:
The new tree has the attributes of both of the maps.
o Traverse the trees simultaneously, following all branches which exist in either tree
o Where one tree lacks branches (has a leaf where the other tree has branches), assign the value of the associated leaf to each of the branches
Adjacency Algorithm
 Find if two leafs are adjacent (here adjacent means sharing a common edge, not just a common point )
Corollary: find the leafs adjacent to a given leaf
Determining Adjacency
1. Same size blocks:
 two leafs are adjacent if their binary representations differ by binary 1 or 10 (decimal 1 or 2) in tesseral arithmetic
 example: 01 and 03 are adjacent because 0001 and 0011 differ by binary 10, or decimal 2
 example: 033 and 211 are adjacent because in tesseral arithmetic
001111 + 10 = 100101, or 100101  10 = 001111
2. Different size blocks:




Taking the longer of the two codes:
 convert it from base 4 to binary
 tesseraladd and subtract 01 and 10 to create four new codes
 reject any cases where subtracting was not possible (a "negative" code would have resulted, or a "carry" would have been necessary to the left of the leftmost digit)
 discard the excess rightmost digits in the resulting transformed longer codes
 convert back to base 4 to get the leaf
 The two blocks are adjacent if any of the transformed and truncated codes are equal to the shorter code



 The length of common boundary between the two blocks is determined by the level of the longer code
Area of a Contiguous Patch Algorithm
 Find the area of a contiguous patch of the same value, e.g. all A
Corollary: How many separate patches of A are there?
Quadtree Indexes
 Indexes are used in vector systems to get fast access to the objects in a particular area of a map
 very useful in searching for potentially overlapping or intersecting objects
http://www.geog.ubc.ca/courses/klink/gis.notes/ncgia/u37.html#SEC37.2