Swift : Array.count contre String.count

Photo de Siora Photography sur Unsplash

De nombreux développeurs pensent que Array.count et String.count sont identiques. Bien qu'ils soient utilisés dans le même but (obtenir la longueur de la séquence), la façon dont ils obtiennent la longueur fait une grande différence.

Le tableau est conforme à RandomAccessCollection ; accéder à la fin des indices prend O(1). Par conséquent, la complexité temporelle de Array.count est O (1)

La chaîne n'est pas conforme à RandomAccessCollection ; compter le nombre de caractères prend O(n), et n est le nombre de caractères dans le String . Par conséquent, la complexité temporelle de String.count est O(n).

Expérimentons !

Pour Array.count

À mesure que la taille du tableau augmente, le temps d'exécution est très stable.

Pour String.Count

À mesure que la taille de la chaîne augmente, le temps d'exécution augmente beaucoup.

Devenez membre Medium , lisez plus d'histoires intéressantes et développez votre carrière.

Pour plus de contenu premium, rendez-vous sur :

Suggested posts

Cycle de vie de l'application

Cycle de vie de l'application

: Cycle du lancement de l'application à l'arrêt : Facilité d'utilisation en gérant la mémoire ou les données ⬆️ La sécurité peut être traitée UIApplication, AppDelegate situation : Définit les fonctions que l'objet AppDelegate reçoit des messages envoyés par l'objet UIApplication et exécute chaque Not Running : L'état dans lequel l'application n'est pas en cours d'exécutionInactive : L'état dans lequel l'application s'exécute mais aucun événement n'est reçuActive : l'état dans lequel l'application s'exécute et un événement se produitBackground : l'état dans lequel l'application est en arrière-plan mais le code en cours d'exécutionSuspened : l'état dans lequel l'application est dans le arrière-plan et en cours d'exécution aucun code à déléguer fonctions dans le fichier AppDelegate.swift SceneDelegate Afin de bien répondre à la fonction scène multiple prise en charge à partir d'iOS 13 AppDelegate / SceneDelegate AppDelegate 1.

Cycle de vie des applications iOS

Cycle de vie des applications iOS

⭐ lorsque l'application démarre L'ordre dans lequel l'AppDelegate est appelé lorsque l'application est tapée et lancée pour la première fois. func application(_:willFinishLaunchingWithOptions) func application(_:didFinishLaunchingWithOptions:) func applicationDidBecomeActive(UIApplication) ⭐ background app Il s'agit de l'ordre dans lequel AppDelegate est appelé lorsque l'application est déplacée en arrière-plan.

Related posts

les pronoms font super peur

Ça me frappe tout à coup, comme c'est si souvent le cas C'est à nouveau le milieu du chemin <Non, pas celui du Pacifique, toi marron, celui du carnaval> Chaque gros titre fort… ..

3 façons éprouvées d'améliorer vos compétences en écriture

Les avantages de l'écriture et les stratégies pour vous aider à le faire

3 façons éprouvées d'améliorer vos compétences en écriture

En 2022, avec la sortie de GPT-3, la compétence en écriture semble devenir moins importante. Avec l'IA, les personnes ayant une mauvaise écriture peuvent également générer du personnel de qualité.

Le mensonge du cow-boy

Comment les mégacorporations ont vendu aux Américains un mensonge costaud

Le mensonge du cow-boy

C'est un matin brillamment doré dans les collines de l'ouest, alors que les premiers rayons du soleil illuminent l'herbe givrée des plaines. Un troupeau de bovins Angus placides, d'un noir de jais et massif, se découpe sur le lever du soleil alors qu'ils descendent un sentier battu vers un lieu qu'ils connaissent tous bien; le bar du petit-déjeuner.

Conversations dangereuses

Conversations dangereuses

Si nous voulons continuer à prospérer sur cette planète, nous allons devoir avoir des conversations dangereuses. Celles qui remettent en question ce que nous avons fait, ce que nous faisons et ce que nous sommes actuellement sur le point de continuer à faire (ou prévoyons de faire).