Erstelle aus einem Array ein Array aus 2er Arrays - wurzelsand/swift-memos GitHub Wiki

Erstelle aus einem Array ein Array aus 2er-Arrays

Themen

  • reduce

Aufgabe

let array = [1, 2, 3, 4, 5, 6]
let arrayOfPairs = makeArrayOfPairs(array)

Die Funktion makeArrayOfPairs(array) soll [1, 2], [3, 4], [5, 6](/wurzelsand/swift-memos/wiki/1,-2],-[3,-4],-[5,-6) ergeben.

Ausführung

func makeArrayOfPairs<T>(_ array: [T]) -> [T](/wurzelsand/swift-memos/wiki/T) {
    var index = 0
    let result = array.reduce(into: [](/wurzelsand/swift-memos/wiki/)) { (result: inout [T](/wurzelsand/swift-memos/wiki/T), element: T) in
        if result[index].count > 1 {
            result.append([])
            index += 1
        }
        result[index].append(element)
    }
    return result
}