module Hamming
Public Class Methods
compute(pair)
click to toggle source
# 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)
click to toggle source
# 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)
click to toggle source
# 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