Bioinformatics/Global alignment: Difference between revisions
Content added Content deleted
(→{{header|jq}}: faster) |
|||
Line 320: | Line 320: | ||
end); |
end); |
||
# Given an array of strings, attempt to find a superstring |
# Given an array of deduplicated strings, attempt to find a superstring |
||
# of these strings in the same order; |
# composed of these strings in the same order; |
||
# return it if found, else null. |
# return it if found, else null. |
||
def relevant($min): |
def relevant($min): |
||
. as $in |
. as $in |
||
| |
| length as $length |
||
| {s: .[0], i:0} |
|||
| until (.s == null or .i >= $length - 1; |
|||
⚫ | |||
⚫ | |||
⚫ | |||
# Since the strings have been deduplicated we can use $in[$i]: |
|||
⚫ | |||
⚫ | |||
⚫ | |||
else .s = null |
|||
end |
end |
||
| .i += 1 ) |
|||
| .s ; |
|||
# Input: an array of strings |
# Input: an array of strings |
||
Line 346: | Line 350: | ||
'''The specific tasks''' |
'''The specific tasks''' |
||
<lang jq> |
<lang jq> |
||
def |
def examples: |
||
[ |
|||
["TA", "AAG", "TA", "GAA", "TA"] |
["TA", "AAG", "TA", "GAA", "TA"], |
||
⚫ | |||
def task2: |
|||
⚫ | |||
⚫ | |||
def task3: |
|||
⚫ | |||
def task4: |
|||
["ATGAAATGGATGTTCTGAGTTGGTCAGTCCCAATGTGCGGGGTTTCTTTTAGTACGTCGGGAGTGGTATTAT", |
["ATGAAATGGATGTTCTGAGTTGGTCAGTCCCAATGTGCGGGGTTTCTTTTAGTACGTCGGGAGTGGTATTAT", |
||
"GGTCGATTCTGAGGACAAAGGTCAAGATGGAGCGCATCGAACGCAATAAGGATCATTTGATGGGACGTTTCGTCGACAAAGT", |
"GGTCGATTCTGAGGACAAAGGTCAAGATGGAGCGCATCGAACGCAATAAGGATCATTTGATGGGACGTTTCGTCGACAAAGT", |
||
Line 368: | Line 370: | ||
"TTTCCAATTATGTAAGCGTTCCGAGACGGGGTGGTCGATTCTGAGGACAAAGGTCAAGATGGAGCGCATC", |
"TTTCCAATTATGTAAGCGTTCCGAGACGGGGTGGTCGATTCTGAGGACAAAGGTCAAGATGGAGCGCATC", |
||
"CTATGTTCTTATGAAATGGATGTTCTGAGTTGGTCAGTCCCAATGTGCGGGGTTTCTTTTAGTACGTCGGGAGTGGTATTATA", |
"CTATGTTCTTATGAAATGGATGTTCTGAGTTGGTCAGTCCCAATGTGCGGGGTTTCTTTTAGTACGTCGGGAGTGGTATTATA", |
||
"TCTCTTAAACTCCTGCTAAATGCTCGTGCTTTCCAATTATGTAAGCGTTCCGAGACGGGGTGGTCGATTCTGAGGACAAAGGTCAAGA"] |
"TCTCTTAAACTCCTGCTAAATGCTCGTGCTTTCCAATTATGTAAGCGTTCCGAGACGGGGTGGTCGATTCTGAGGACAAAGGTCAAGA"] |
||
]; |
|||
def tasks: |
def tasks: |
||
def t: shortest_common_superstring | synopsis; |
def t: shortest_common_superstring | synopsis; |
||
⚫ | |||
examples |
|||
"\nTask 2:", (task2|t), |
|||
| . as $examples |
|||
"\nTask 3:", (task3|t), |
|||
| range(0;length) as $i |
|||
"\nTask 4:", (task4|t); |
|||
⚫ | |||
tasks</lang> |
tasks</lang> |