コード例 #1
0
<?php

require __DIR__ . '/../../_common.php';
echo PatternToNumber('AGT');
echo '<hr>';
echo PatternToNumberOptimized('GAATGGAACCATTAATCGTG');
echo '<hr>';
echo NumberToPattern(5437, 8);
echo '<hr>';
echo NumberToPatternOptimized(7551, 7);
コード例 #2
0
ファイル: _common.php プロジェクト: nekhbet/bioinformatics
function FrequentWordsMismatchesBruteForce($genome, $k, $d, $debug = FALSE)
{
    $solution = array();
    $_max = -1;
    $_length = pow(4, $k);
    for ($i = 0; $i < $_length; $i++) {
        $_text = NumberToPatternOptimized($i, $k);
        $_indexes = ApproximatePatternMatching($_text, $genome, $d);
        if ($_indexes) {
            $_cnt = count($_indexes);
            if ($_cnt > $_max) {
                $solution = array();
                $solution[$_text] = $_text;
                $_max = $_cnt;
            } elseif ($_cnt == $_max) {
                $solution[$_text] = $_text;
            }
        }
        if ($debug and $i % 10000 == 0) {
            debug_data('I = ' . $i . '/' . $_length);
        }
    }
    return $solution;
}