Swift: Array.count vs. String.count

Foto von Siora Photography auf Unsplash

Viele Entwickler denken, dass Array.count und String.count gleich sind. Obwohl sie für den gleichen Zweck verwendet werden (Ermitteln der Sequenzlänge), macht es einen großen Unterschied, wie sie die Länge ermitteln.

Array entspricht RandomAccessCollection ; Der Zugriff auf das Ende der Indizes erfordert O(1). Daher beträgt die zeitliche Komplexität von Array.count O(1)

String entspricht nicht RandomAccessCollection ; Das Zählen der Anzahl der Zeichen erfordert O(n) und n ist die Anzahl der Zeichen im String . Daher beträgt die zeitliche Komplexität von String.count O(n).

Lasst uns experimentieren!

Für Array.count

Mit zunehmender Array-Größe ist die Laufzeit sehr stabil.

Für String.Count

Mit zunehmender String-Größe erhöht sich die Laufzeit erheblich.

Werden Sie Medium-Mitglied , lesen Sie weitere tolle Geschichten und steigern Sie Ihre Karriere.

Weitere Premium-Inhalte finden Sie unter:

Suggested posts

App-Lebenszyklus

App-Lebenszyklus

: Zyklus vom App-Start bis zum Herunterfahren: Benutzerfreundlichkeit durch Speicher- oder Datenverwaltung ⬆️ Sicherheit kann verarbeitet werden UIApplication, AppDelegate-Situation: Definiert Funktionen, die das AppDelegate-Objekt vom UIApplication-Objekt gesendete Nachrichten empfängt und jeweils ausführt. Nicht ausgeführt: Der Status, in dem die App nicht ausgeführt wird. Inaktiv: Der Status, in dem die App ausgeführt wird, aber keine Ereignisse empfangen werden. Aktiv: Der Status, in dem die App ausgeführt wird und ein Ereignis auftritt. Hintergrund: Der Status, in dem sich die App im Hintergrund befindet, der Code jedoch ausgeführt wird. Gesperrt: Der Status, in dem sich die App befindet Im Hintergrund ausgeführt und kein Code ausgeführt, um Delegate-Funktionen in der AppDelegate.swift-Datei SceneDelegate auszuführen, um gut auf die ab iOS 13 unterstützte Funktion für mehrere Szenen zu reagieren, AppDelegate / SceneDelegate AppDelegate 1.

iOS-App-Lebenszyklus

iOS-App-Lebenszyklus

⭐ wann die App startet Die Reihenfolge, in der AppDelegate aufgerufen wird, wenn die App zum ersten Mal angetippt und gestartet wird. func application(_:willFinishLaunchingWithOptions) func application(_:didFinishLaunchingWithOptions:) func applicationDidBecomeActive(UIApplication) ⭐ Hintergrund-App Dies ist die Reihenfolge, in der AppDelegate aufgerufen wird, wenn die App in den Hintergrund verschoben wird.

Related posts

Was macht einen Podcast einflussreich?

Was macht einen Podcast einflussreich?

Letzte Woche fiel mir eine Pressemitteilung auf, die über PressGazette (eine britische Nachrichten-Website für Medien) verschickt wurde. In dem Artikel wurde angekündigt, dass Acast, das skandinavische Podcast-Hosting- und Werbeunternehmen, ein Konsortium der „wahrscheinlich einflussreichsten“ Verlage im Podcasting leiten werde.

Die Goodreads Reading Challenge ist giftig

Die Goodreads Reading Challenge ist giftig

Der Juckreiz in meiner Hand breitete sich aus, als ich mit dem örtlichen Buchhändler um ein weiteres Buch verhandelte. Dieses Buch würde wie die anderen, die ich kürzlich gekauft habe, seinen Thron auf meinem Stapel „To Be Read“ (TBR) finden; und trotzdem habe ich es gekauft.

Pronomen sind super gruselig

Es fällt mir plötzlich auf, wie so oft. Es ist wieder die Mitte. <Nein, nicht die im Pazifik, du Schlappschwanz, die auf dem Jahrmarkt> Jede Schlagzeile laut…..

GRENZENLOSES LEBEN

Wenn man erwachsen wird, wird einem oft gesagt, dass die Welt so ist, wie sie ist, und dass das Leben nur darin besteht, sein Leben in der Welt zu leben, niemals sein Leben zu riskieren, einfach einem festgelegten Weg zu folgen und am Ende zu sterben, und versucht, es nicht zu tun Schlage zu viel gegen die Wände. Aber das ist ein sehr begrenztes Leben.