diff options
author | Jesse Luehrs <doy@tozt.net> | 2013-03-09 00:09:38 -0600 |
---|---|---|
committer | Jesse Luehrs <doy@tozt.net> | 2013-03-09 00:09:38 -0600 |
commit | 00e7efaee4bb250758563289ef509101b43715f1 (patch) | |
tree | 0d95ed37e7fa9186be930aa726e32e0c1a133a05 | |
parent | 8cc12384694f26af5d8cd928c1dc9d552204ac94 (diff) | |
download | rosalind-00e7efaee4bb250758563289ef509101b43715f1.tar.gz rosalind-00e7efaee4bb250758563289ef509101b43715f1.zip |
grph
-rw-r--r-- | GRPH.rs | 22 |
1 files changed, 22 insertions, 0 deletions
@@ -0,0 +1,22 @@ +use str::{len,view}; + +extern mod rosalind; +use rosalind::fasta::FASTAReader; + +fn main() { + let mut dna: ~[(~str, ~str)] = ~[]; + let reader = FASTAReader::new(); + for reader.each_sequence |cur_name, cur_seq| { + let cur_len = len(cur_seq); + for dna.each |&(prev_name, prev_seq)| { + let prev_len = len(prev_seq); + if view(cur_seq, 0, 3) == view(prev_seq, prev_len - 3, prev_len) { + io::println(fmt!("%s %s", prev_name, cur_name)); + } + if view(prev_seq, 0, 3) == view(cur_seq, cur_len - 3, cur_len) { + io::println(fmt!("%s %s", cur_name, prev_name)); + } + } + dna.push((cur_name, cur_seq)); + } +} |