0Pricing
Swift Academy · Leçon

Choisir entre Array, Dictionary et Set

Découvrez les caractéristiques de performance et le type de collection adapté à chaque situation.

Choisir entre Array, Dictionary et Set est une leçon Swift Academy gratuite sur CoddyKit. Ceci est la leçon 4 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Swift Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Swift Academy comprend 4 leçons au total.

Bienvenue

Les trois collections intégrées de Swift — `Array`, `Dictionary` et `Set` — ont chacune leurs points forts. Choisir la bonne influe à la fois sur la correction et sur les performances.

Tableau : séquences ordonnées

Utilisez `Array` lorsque : • L’ordre est important • Vous avez besoin d’un accès aléatoire par indice en `O(1)` • Les doublons sont autorisés • Vous parcourez les éléments séquentiellement ```swift let steps = ["boil","add tea","steep","drink"] ```

Dictionnaire : recherche par clé-valeur

Utilisez `Dictionary` lorsque : • Vous avez besoin d’une recherche en O(1) avec une clé unique • Les données sont naturellement indexées par clé (identifiant utilisateur, clé de configuration) ```swift var userNames: [Int: String] = [42: "Alice", 7: "Bob"] print(userNames[42]!) // "Alice" ```

Ensemble : appartenance unique

Utilisez `Set` lorsque : • Vous avez besoin d’une vérification d’appartenance en O(1) • Les doublons doivent être exclus • L’ordre n’a pas d’importance ```swift var visitedPages: Set = [] visitedPages.insert("/home") print(visitedPages.contains("/home")) // true ```

Résumé des performances

| Opération | Tableau | Dictionnaire | Ensemble | |-------------------|---------|--------------|------------| | Ajouter | O(1)* | O(1)* | O(1)* | | Accès par indice/clé | O(1) | O(1)* | — | | Recherche | O(n) | O(1)* | O(1)* | | Insertion au milieu | O(n) | O(1)* | O(1)* | *moyenne amortie

Quand un tableau est meilleur qu’un ensemble

Les petites collections privilégient souvent `Array` plutôt que `Set` en raison d’un coût moindre : ```swift // For 5 items, Array.contains is perfectly fast: let tags = ["swift","ios","mobile"] if tags.contains("swift") { ... } ``` Le coût fixe du hachage peut dominer pour les ensembles minuscules.

Motif du dictionnaire ordonné

Lorsque vous avez besoin d’une recherche par clé ET de l’ordre d’insertion : ```swift // Use an array of tuples or a struct: var ordered: [(key: String, value: Int)] = [] // Or Foundation's NSOrderedDictionary // Or maintain a [Key] array alongside a [Key:Value] dict ```

Motif du multiensemble

Pour compter les doublons (multiensemble), utilisez `[T: Int]` : ```swift var frequency: [String: Int] = [:] for word in words { frequency[word, default: 0] += 1 } ```

Immuabilité : constantes et variables

Les trois collections bénéficient de l’utilisation de `let` pour garantir leur immuabilité : ```swift let config: [String: String] = ["env": "prod"] let primes: Set = [2,3,5,7,11] let steps: [String] = ["fetch","parse","display"] ``` Les collections immuables évitent les modifications accidentelles et permettent au compilateur d’effectuer des optimisations.

Arbre de décision pratique

Posez-vous ces questions : 1. Ai-je besoin d’un accès ordonné par position ? → Tableau 2. Ai-je besoin d’une recherche par clé unique ? → Dictionnaire 3. Ai-je besoin d’une vérification d’appartenance rapide sans doublons ? → Ensemble 4. Combinaison ? → Composez : par exemple, `[Key: [Value]]` pour des données regroupées

Vérification rapide

Quelle collection fournit une recherche moyenne en O(1) par une clé unique ?

Récapitulatif

Points essentiels : • Tableau — ordonné, indexé, autorise les doublons • Dictionnaire — paires clé-valeur, recherche en O(1) • Ensemble — valeurs uniques, appartenance en O(1) • Petites collections : le tableau est souvent plus performant que l’ensemble en raison du coût du hachage • Composez les collections pour représenter des données complexes Cours terminé ! Suite : motifs de conception de structures.

Questions Fréquemment Posées

La leçon « Choisir entre Array, Dictionary et Set » est-elle gratuite ?

Oui — le texte complet de « Choisir entre Array, Dictionary et Set » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Swift Academy, passe à CoddyKit PRO. Le cours Swift Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Choisir entre Array, Dictionary et Set » ?

Découvrez les caractéristiques de performance et le type de collection adapté à chaque situation. Tu pratiques Swift Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Swift Academy ?

Aucune expérience préalable n'est requise. Swift Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 4 sur 4.

Combien de temps prend la leçon « Choisir entre Array, Dictionary et Set » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Swift Academy ?

Oui. Chaque leçon Swift Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Opérations CRUD sur les dictionnaires et accès par indice
  2. Parcourir et transformer des dictionnaires
  3. Opérations sur les ensembles : union, intersection, différence
  4. Choisir entre Array, Dictionary et Set
← Retour à Swift Academy