Sha256: 7e253574b090225458ccbb49ef9ac45e6764b9d81f1c9e68ba494727a4ac7319

Contents?: true

Size: 381 Bytes

Versions: 214

Compression:

Stored size: 381 Bytes

Contents

module Hamming

import Data.Vect

public export
data Nucleotide = A | C | G | T

public export
implementation Eq Nucleotide where
  A == A = True
  C == C = True
  G == G = True
  T == T = True
  _ == _ = False

export
hamming_distance : Eq a => Vect n a -> Vect n a -> Nat
hamming_distance s1 s2 = 
  fst $ filter ((/=) 0) $ map (\(n1,n2) => if n1 == n2 then 0 else 1) $ zip s1 s2

Version data entries

214 entries across 214 versions & 1 rubygems

Version Path
trackler-2.2.1.40 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.39 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.38 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.37 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.36 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.35 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.34 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.33 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.32 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.31 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.30 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.29 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.28 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.27 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.26 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.25 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.24 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.23 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.22 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.21 tracks/idris/exercises/hamming/src/example.idr