Module: Hamming
- Defined in:
- lib/dna_hamming/hamming.rb
Class Method Summary collapse
- .compute(pair) ⇒ Object
- .count_the_distance(pair) ⇒ Object
- .set_strand_position_by_length(pair) ⇒ Object
Class Method Details
.compute(pair) ⇒ Object
2 3 4 5 |
# File 'lib/dna_hamming/hamming.rb', line 2 def self.compute(pair) set_strand_position_by_length(pair) unless pair.same? count_the_distance(pair) end |
.count_the_distance(pair) ⇒ Object
8 9 10 |
# File 'lib/dna_hamming/hamming.rb', line 8 def self.count_the_distance(pair) pair.entries.map(&:chars).inject(:zip).select{|a,b| a!=b}.count end |
.set_strand_position_by_length(pair) ⇒ Object
12 13 14 |
# File 'lib/dna_hamming/hamming.rb', line 12 def self.set_strand_position_by_length(pair) pair.swap! if pair.inject{|a,b|a.length>b.length} end |