Sha256: 4e3d855d00651d1fdf1b42a9cb7c04b988aea07a5f4a4846d7931ae0bae32c8f

Contents?: true

Size: 644 Bytes

Versions: 71

Compression:

Stored size: 644 Bytes

Contents

struct BracketPush {

    private static let brackets: [Character : Character] = [
        ")" : "(",
        "]" : "[",
        "}" : "{"
    ]

    static func paired(text: String) -> Bool {
        var stack = [Character]()

        for character in text.characters {
            if brackets.values.contains(character) {
                stack.append(character)
            } else if brackets.keys.contains(character) {
                guard let last = stack.popLast(),
                    last == brackets[character] else {
                        return false
                }
            }
        }

        return stack.isEmpty
    }
}

Version data entries

71 entries across 71 versions & 1 rubygems

Version Path
trackler-2.0.6.15 tracks/swift/exercises/bracket-push/BracketPushExample.swift
trackler-2.0.6.14 tracks/swift/exercises/bracket-push/BracketPushExample.swift
trackler-2.0.6.13 tracks/swift/exercises/bracket-push/BracketPushExample.swift
trackler-2.0.6.12 tracks/swift/exercises/bracket-push/BracketPushExample.swift
trackler-2.0.6.11 tracks/swift/exercises/bracket-push/BracketPushExample.swift
trackler-2.0.6.10 tracks/swift/exercises/bracket-push/BracketPushExample.swift
trackler-2.0.6.9 tracks/swift/exercises/bracket-push/BracketPushExample.swift
trackler-2.0.6.8 tracks/swift/exercises/bracket-push/BracketPushExample.swift
trackler-2.0.6.7 tracks/swift/exercises/bracket-push/BracketPushExample.swift
trackler-2.0.6.6 tracks/swift/exercises/bracket-push/BracketPushExample.swift
trackler-2.0.6.5 tracks/swift/exercises/bracket-push/BracketPushExample.swift
trackler-2.0.6.4 tracks/swift/exercises/bracket-push/BracketPushExample.swift
trackler-2.0.6.3 tracks/swift/exercises/bracket-push/BracketPushExample.swift
trackler-2.0.6.2 tracks/swift/exercises/bracket-push/BracketPushExample.swift
trackler-2.0.6.1 tracks/swift/exercises/bracket-push/BracketPushExample.swift
trackler-2.0.6.0 tracks/swift/exercises/bracket-push/BracketPushExample.swift
trackler-2.0.5.18 tracks/swift/exercises/bracket-push/BracketPushExample.swift
trackler-2.0.5.17 tracks/swift/exercises/bracket-push/BracketPushExample.swift
trackler-2.0.5.16 tracks/swift/exercises/bracket-push/BracketPushExample.swift
trackler-2.0.5.15 tracks/swift/exercises/bracket-push/BracketPushExample.swift