Sha256: c0008c2101265ed14f988fc2142befe05172b5859fe047d889bb9895637ceb8d

Contents?: true

Size: 395 Bytes

Versions: 59

Compression:

Stored size: 395 Bytes

Contents

use std::collections::HashMap;

pub fn count(nucleotide: char, input: &str) -> usize {
    input.chars().filter(|&c| c == nucleotide).count()
}

pub fn nucleotide_counts(input: &str) -> HashMap<char, usize> {
    let mut map: HashMap<char, usize> = "ACGT".chars().map(|c| (c, 0)).collect();
    for nucleotide in input.chars() {
        *map.entry(nucleotide).or_insert(0) += 1;
    }
    map
}

Version data entries

59 entries across 59 versions & 1 rubygems

Version Path
trackler-2.0.6.3 tracks/rust/exercises/nucleotide-count/example.rs
trackler-2.0.6.2 tracks/rust/exercises/nucleotide-count/example.rs
trackler-2.0.6.1 tracks/rust/exercises/nucleotide-count/example.rs
trackler-2.0.6.0 tracks/rust/exercises/nucleotide-count/example.rs
trackler-2.0.5.18 tracks/rust/exercises/nucleotide-count/example.rs
trackler-2.0.5.17 tracks/rust/exercises/nucleotide-count/example.rs
trackler-2.0.5.16 tracks/rust/exercises/nucleotide-count/example.rs
trackler-2.0.5.15 tracks/rust/exercises/nucleotide-count/example.rs
trackler-2.0.5.14 tracks/rust/exercises/nucleotide-count/example.rs
trackler-2.0.5.13 tracks/rust/exercises/nucleotide-count/example.rs
trackler-2.0.5.12 tracks/rust/exercises/nucleotide-count/example.rs
trackler-2.0.5.11 tracks/rust/exercises/nucleotide-count/example.rs
trackler-2.0.5.10 tracks/rust/exercises/nucleotide-count/example.rs
trackler-2.0.5.9 tracks/rust/exercises/nucleotide-count/example.rs
trackler-2.0.5.8 tracks/rust/exercises/nucleotide-count/example.rs
trackler-2.0.5.7 tracks/rust/exercises/nucleotide-count/example.rs
trackler-2.0.5.6 tracks/rust/exercises/nucleotide-count/example.rs
trackler-2.0.5.5 tracks/rust/exercises/nucleotide-count/example.rs
trackler-2.0.5.4 tracks/rust/exercises/nucleotide-count/example.rs
trackler-2.0.5.3 tracks/rust/exercises/nucleotide-count/example.rs