Avatar ·

Leistung der Array-Sortierung in Swift Beta: warum so langsam und wie beschleunigen?

Hallo zusammen! Ich habe gerade angefangen, Swift zu lernen, und bin auf ein sehr seltsames Problem beim Sortieren von Arrays gestoßen. Ich verwende Xcode 6 Beta und habe festgestellt, dass die Sortierung im Vergleich zu Objective-C sehr langsam arbeitet. Hier ist ein einfacher Code:\n\n```swift\nvar numbers = [Int]()\nfor i in 0..<10000 {\n numbers.append(Int(arc4random_uniform(1000)))\n}\n\nlet start = CFAbsoluteTimeGetCurrent()\nlet sorted = numbers.sorted { $0 < $1 }\nlet end = CFAbsoluteTimeGetCurrent()\nprint("Sortierzeit: \\(end - start) Sekunden")\n```\n\nBei realen Daten (Array mit 10.000 Elementen) dauert die Sortierung etwa 0,5-1 Sekunde, was 10-mal langsamer ist als ein ähnlicher Code in Objective-C. Dabei scheint der Compiler den Code zu optimieren (Optimierung -O ist aktiviert). Ich habe verschiedene Varianten ausprobiert: sorted(), sort(), sogar eigene

Noch keine Antworten.

Anmelden um eine Antwort zu hinterlassen

Blogs