Sha256: 73815466a58de243ce9483a160cdfba081d655e26036f8b6010128755cd4e1cc

Contents?: true

Size: 729 Bytes

Versions: 159

Compression:

Stored size: 729 Bytes

Contents

struct GradeSchool {
    var roster = [Int: Set<String>]()

    mutating func addStudent(_ name: String, grade: Int) {
        if let students = roster[grade] {
            var students = students
            students.insert(name)
            roster[grade] = students
        } else {
            roster[grade] = Set(arrayLiteral: name)
        }
    }

    func studentsInGrade(_ grade: Int) -> Set<String> {
        return roster[grade] ?? Set<String>()
    }

    var sortedRoster: [Int: Set<String>] {
        var sortedRoster = [Int: Set<String>](minimumCapacity: roster.count)
        for (grade, students) in roster {
            sortedRoster[grade] = Set(students.sorted())

        }
        return sortedRoster
    }
}

Version data entries

159 entries across 159 versions & 1 rubygems

Version Path
trackler-2.1.0.3 tracks/swift/exercises/grade-school/Sources/GradeSchoolExample.swift
trackler-2.1.0.2 tracks/swift/exercises/grade-school/Sources/GradeSchoolExample.swift
trackler-2.1.0.1 tracks/swift/exercises/grade-school/Sources/GradeSchoolExample.swift
trackler-2.1.0.0 tracks/swift/exercises/grade-school/Sources/GradeSchoolExample.swift
trackler-2.0.8.55 tracks/swift/exercises/grade-school/Sources/GradeSchoolExample.swift
trackler-2.0.8.54 tracks/swift/exercises/grade-school/Sources/GradeSchoolExample.swift
trackler-2.0.8.53 tracks/swift/exercises/grade-school/Sources/GradeSchoolExample.swift
trackler-2.0.8.52 tracks/swift/exercises/grade-school/Sources/GradeSchoolExample.swift
trackler-2.0.8.51 tracks/swift/exercises/grade-school/Sources/GradeSchoolExample.swift
trackler-2.0.8.50 tracks/swift/exercises/grade-school/Sources/GradeSchoolExample.swift
trackler-2.0.8.49 tracks/swift/exercises/grade-school/Sources/GradeSchoolExample.swift
trackler-2.0.8.48 tracks/swift/exercises/grade-school/Sources/GradeSchoolExample.swift
trackler-2.0.8.47 tracks/swift/exercises/grade-school/Sources/GradeSchoolExample.swift
trackler-2.0.8.46 tracks/swift/exercises/grade-school/Sources/GradeSchoolExample.swift
trackler-2.0.8.45 tracks/swift/exercises/grade-school/Sources/GradeSchoolExample.swift
trackler-2.0.8.44 tracks/swift/exercises/grade-school/Sources/GradeSchoolExample.swift
trackler-2.0.8.43 tracks/swift/exercises/grade-school/Sources/GradeSchoolExample.swift
trackler-2.0.8.42 tracks/swift/exercises/grade-school/Sources/GradeSchoolExample.swift
trackler-2.0.8.41 tracks/swift/exercises/grade-school/Sources/GradeSchoolExample.swift
trackler-2.0.8.40 tracks/swift/exercises/grade-school/Sources/GradeSchoolExample.swift