IRONSOFTWAREHOME
MISES À JOUR POUR LES DÉVELOPPEURS

C# Linked List (Comment ça fonctionne pour les développeurs)

Jacob Mellor, Directeur technique @ Team Iron
Jacob Mellor
Updated: 21 avril 2026

Une liste chaînée est une structure de données linéaire composée d'une série de nœuds, qui peuvent également être appelés éléments. Contrairement aux tableaux, où les éléments/nœuds sont stockés dans des emplacements de mémoire contigus, les listes chaînées utilisent l'allocation dynamique de mémoire, permettant aux éléments/nœuds d'être dispersés dans la mémoire.

Dans sa forme la plus simple, les " listes chaînées " se composent de nœuds reliés linéairement. Chaque nœud contient deux parties principales :

  1. Données : Charge utile stockée dans le nœud. Cela peut être de n'importe quel type de données selon l'implémentation, tels que des entiers, des chaînes, des objets, etc.
  2. Pointeur suivant : Une référence (ou pointeur) vers le nœud suivant dans la séquence. Ce pointeur indique l'emplacement mémoire du nœud suivant en avant dans la liste chaînée.

Le dernier nœud d'une liste chaînée pointe généralement vers une référence nulle, indiquant la fin de la liste.

Dans cet article, nous allons examiner en détail la liste chaînée en C# et explorer également la bibliothèque IronPDF, un outil de génération de PDF de Iron Software.

Types de listes chaînées

1. Liste chaînée simplement

Une liste chaînée simplement a un nœud avec une seule référence, pointant généralement vers le nœud suivant dans la séquence. Le parcours de la liste est limité à un mouvement dans une seule direction, typiquement de la tête (le nœud initial) à la queue (le nœud final).

2. Liste chaînée doublement

Dans une liste chaînée doublement, chaque nœud contient deux références : l'une pointant vers le nœud suivant et l'autre pointant vers le nœud précédent dans la séquence. Ce lien bidirectionnel permet un parcours dans les deux directions, avant et arrière.

3. Liste chaînée circulaire

Dans une liste chaînée circulaire, le dernier nœud renvoie au premier nœud, formant une structure circulaire. Ce type de liste chaînée peut être mis en œuvre en utilisant soit des nœuds simplement chaînés soit doublement chaînés.

Opérations de base sur les listes chaînées

  1. Insertion : Ajout d'un nouveau nœud à la liste à une position spécifique, telle que le début, la fin ou le milieu.
  2. Suppression : suppression d'un nœud d'objet spécifié de la liste et ajustement des pointeurs des nœuds voisins en conséquence.
  3. Parcours : itération sur la liste pour accéder aux données de chaque nœud ou les manipuler.
  4. Recherche : Trouver un nœud spécifique dans la liste en fonction de sa valeur spécifiée dans les données.

Linked List in C#

En C#, vous pouvez implémenter une liste chaînée en utilisant la classe LinkedList du namespace System.Collections.Generic. Voici un exemple de toutes les opérations de base :

using System;
using System.Collections.Generic;

namespace CsharpSamples
{
    public class Program
    {
        public static void Main()
        {
            // Create a new linked list of integers
            LinkedList<int> linkedList = new LinkedList<int>();
            
            // Add elements to the linked list
            linkedList.AddLast(10);
            linkedList.AddLast(20);
            linkedList.AddLast(30);
            linkedList.AddLast(40);
            
            // Traverse and print the elements of the linked list
            Console.WriteLine("Traverse Linked List elements:");
            foreach (var item in linkedList)
            {
                Console.WriteLine(item);
            }
            
            // Display number of linked list elements
            Console.WriteLine($"Number of Linked List elements: {linkedList.Count}");
            
            // Find/Search for an element in the linked list
            Console.WriteLine("\nFind/Search Element Linked List elements: 30");
            var foundNode = linkedList.Find(30);
            
            if (foundNode != null)
            {
                Console.WriteLine(
                    $"Found Value: {foundNode.Value}, " +
                    $"Next Element: {(foundNode.Next != null ? foundNode.Next.Value.ToString() : "null")}, " +
                    $"Previous Element: {(foundNode.Previous != null ? foundNode.Previous.Value.ToString() : "null")}"
                );
            }
            
            // Insert an element at a specified node
            LinkedListNode<int> current = linkedList.Find(20);
            if (current != null)
            {
                linkedList.AddAfter(current, 25);
            }
            
            Console.WriteLine($"\nNumber of Linked List elements: {linkedList.Count}");
            Console.WriteLine("\nLinked List elements after insertion:");
            foreach (var item in linkedList)
            {
                Console.WriteLine(item);
            }
            
            // Remove an existing node from the linked list
            linkedList.Remove(30);
            
            Console.WriteLine("\nLinked List elements after removal:");
            foreach (var item in linkedList)
            {
                Console.WriteLine(item);
            }
            
            Console.WriteLine($"\nNumber of Linked List elements: {linkedList.Count}");
        }
    }
}

Explication du code

  1. Créez une nouvelle liste chaînée d'entiers en utilisant new LinkedList<int>().
  2. Ajouter des objets avec des valeurs spécifiées à la liste chaînée.
  3. Parcourez et imprimez les éléments de la liste chaînée en utilisant une boucle foreach.
  4. Trouver/rechercher un élément dans la liste chaînée.
  5. Insérez un élément à un nœud spécifié en utilisant les méthodes Find et AddAfter.
  6. Supprimez un nœud existant de la liste chaînée en utilisant la méthode Remove.

Sortie

C# Linked List (Comment cela fonctionne pour les développeurs) : Figura 1 - Sortie de la liste chaînée

Présentation d'IronPDF

Découvrez-en plus sur IronPDF est une bibliothèque PDF C# puissante développée et maintenue par Iron Software. Elle fournit un ensemble complet de fonctionnalités pour créer, éditer, et extraire le contenu de documents PDF dans les projets .NET.

Points clés sur IronPDF

Conversion HTML en PDF

IronPDF vous permet de convertir du contenu HTML au format PDF. Vous pouvez facilement rendre des pages HTML, des URL et des chaînes HTML en PDF.

API riche

La bibliothèque offre une API conviviale permettant aux développeurs de générer des PDF de qualité professionnelle directement à partir de HTML. Que vous ayez besoin de créer des factures, des rapports ou d'autres documents, IronPDF simplifie le processus.

Support Multiplateforme

IronPDF est compatible avec divers environnements .NET, incluant .NET Core, .NET Standard et .NET Framework. Il fonctionne sur les plateformes Windows, Linux et macOS.

Polyvalence

IronPDF prend en charge différents types de projets, tels que les applications web (Blazor et WebForms), les applications de bureau (WPF et MAUI), et les applications de console.

Sources de contenu

Vous pouvez générer des PDFs à partir de diverses sources de contenu, y compris des fichiers HTML, des vues Razor (Blazor Server), des CSHTML (MVC et Razor), des ASPX (WebForms), et des XAML (MAUI).

Fonctionnalités supplémentaires

  1. Ajouter des en-têtes et pieds de page aux PDFs.
  2. Fusionner, diviser, ajouter, copier et supprimer des pages PDF.
  3. Définir des mots de passe, des autorisations, et des signatures numériques.
  4. Optimiser les performances avec la prise en charge du multithreading et de l'asynchrone.

Compatibilité

IronPDF se conforme aux normes PDF, y compris les versions 1.2 à 1.7, PDF/UA, et PDF/A. Il prend également en charge l'encodage de caractères UTF-8, les URLs de base, et l'encodage des ressources.

Générez un document PDF en utilisant LinkedList

Maintenant, créons un document PDF en utilisant IronPDF et démontrons aussi l'utilisation des chaînes LinkedList.

Pour commencer, ouvrez Visual Studio et créez une application console en sélectionnant parmi les modèles de projet comme indiqué ci-dessous.

C# Linked List (Comment cela fonctionne pour les développeurs) : Figura 2 - Nouveau projet

Fournissez un nom de projet et un emplacement.

C# Linked List (Comment cela fonctionne pour les développeurs) : Figura 3 - Configuration du projet

Sélectionnez la version .NET requise.

C# Linked List (Comment cela fonctionne pour les développeurs) : Figura 4 - Framework cible

Installez IronPDF à partir du Package Manager de Visual Studio comme celui ci-dessous.

C# Linked List (Comment cela fonctionne pour les développeurs) : Figura 5 - Installer IronPDF

Ou il peut être installé en utilisant la ligne de commande ci-dessous.

> dotnet add package IronPdf --version 2024.4.2

Ajoutez le code ci-dessous.

using System;
using System.Collections.Generic;
using IronPdf;

namespace CsharpSamples
{
    public class Program
    {
        public static void Main()
        {
            var content = "<h1>Demonstrate IronPDF with C# LinkedList</h1>";
            content += "<h2>Create a new linked list of strings</h2>";
            content += "<p>Create a new linked list of strings with new LinkedList&lt;string&gt;()</p>";
            
            // Create a new linked list of strings
            LinkedList<string> linkedList = new LinkedList<string>();
            
            // Add elements to the linked list
            content += "<p>Add Apple to linkedList</p>";
            linkedList.AddLast("Apple");
            
            content += "<p>Add Banana to linkedList</p>";
            linkedList.AddLast("Banana");
            
            content += "<p>Add Orange to linkedList</p>";
            linkedList.AddLast("Orange");
            
            content += "<h2>Print the elements of the linked list</h2>";
            Console.WriteLine("Linked List elements:");
            
            foreach (var item in linkedList)
            {
                content += $"<p>{item}</p>";
                Console.WriteLine(item);
            }
            
            content += "<h2>Insert an element at a specific position</h2>";
            LinkedListNode<string> node = linkedList.Find("Banana");
            if (node != null)
            {
                linkedList.AddAfter(node, "Mango");
                content += "<p>Find Banana and insert Mango After</p>";
            }
            
            Console.WriteLine("\nLinked List elements after insertion:");
            content += "<h2>Linked List elements after insertion:</h2>";
            
            foreach (var item in linkedList)
            {
                content += $"<p>{item}</p>";
                Console.WriteLine(item);
            }
            
            content += "<h2>Remove an element from the linked list</h2>";
            linkedList.Remove("Orange");
            content += "<p>Remove Orange from linked list</p>";
            
            Console.WriteLine("\nLinked List elements after removal:");
            content += "<h2>Linked List elements after removal:</h2>";
            
            foreach (var item in linkedList)
            {
                content += $"<p>{item}</p>";
                Console.WriteLine(item);
            }
            
            // Create a PDF renderer
            var renderer = new ChromePdfRenderer();
            
            // Create a PDF from HTML string
            var pdf = renderer.RenderHtmlAsPdf(content);
            
            // Save to a file
            pdf.SaveAs("AwesomeIronOutput.pdf");
        }
    }
}

Explication du code

  1. Tout d'abord, nous commençons par créer le contenu pour le PDF, en utilisant un objet de chaîne de contenu. Le contenu est généré sous forme de chaîne HTML.
  2. Créez une nouvelle liste chaînée de chaînes de caractères avec new LinkedList<string>().
  3. Ajoutez des éléments à la liste liée et ajoutez également des informations à la chaîne de contenu PDF.
  4. Imprimez les éléments de la liste liée et ajoutez-les au contenu PDF.
  5. Insérez un élément à une position spécifique en utilisant la méthode AddAfter ; mettez à jour le contenu et imprimez la liste résultante.
  6. Supprimez un élément de la liste chaînée en utilisant la méthode Remove, mettez à jour le contenu, et imprimez la liste résultante.
  7. Enfin, sauvegardez la chaîne de contenu HTML générée dans un document PDF en utilisant les méthodes ChromePdfRenderer, RenderHtmlAsPdf, et SaveAs.

Sortie

C# Linked List (Comment cela fonctionne pour les développeurs) : Figura 6 - IronPDF avec sortie LinkedList

La sortie a un filigrane qui peut être retiré en utilisant une licence valide de la page de licence IronPDF.

Licence IronPDF

La bibliothèque IronPDF nécessite une licence pour fonctionner, et elle peut être obtenue depuis la page de licence du produit.

Collez la clé dans le fichier appSettings.json ci-dessous.

{
  "IronPdf.License.LicenseKey": "The Key Goes Here"
}
JSON

Conclusion

C# LinkedList fournit une structure de données polyvalente pour gérer des collections d'éléments, offrant des insertions et suppressions efficaces tout en permettant un redimensionnement dynamique, similaire à la fonction de hachage par défaut. Les listes chaînées sont couramment utilisées dans diverses applications et algorithmes, tels que l'implémentation de piles, de files, de tables de symboles et de systèmes de gestion de mémoire. Comprendre les caractéristiques et les opérations des listes chaînées est essentiel pour construire des solutions logicielles efficaces et évolutives.

En résumé, bien que les listes chaînées excellent dans certains scénarios, tels que les structures de données dynamiques et les insertions/suppressions fréquentes, elles ne sont peut-être pas le meilleur choix pour les applications nécessitant un accès aléatoire fréquent ou traitant des environnements sensibles à la mémoire. Une considération attentive des exigences spécifiques et des caractéristiques des données peut orienter la sélection de la structure de données la plus appropriée pour la tâche à accomplir.

La bibliothèque IronPDF d'Iron Software permet aux développeurs de créer et de manipuler des documents PDF sans effort, ce qui permet d'acquérir des compétences avancées pour développer des applications modernes.

Jacob Mellor, Directeur technique @ Team Iron
Directeur technique

Jacob Mellor est directeur de la technologie chez Iron Software et un ingénieur visionnaire pionnier de la technologie C# PDF. En tant que développeur à l'origine de la base de code centrale d'Iron Software, il a façonné l'architecture des produits de l'entreprise depuis sa création, la transformant aux côtés du PDG Cameron Rimington en une entreprise de plus de 50 personnes au service de la NASA, de Tesla et d'agences gouvernementales mondiales.

...
Lire la suite

Articles connexes

Key in blue circle

Obtenez votre clé d'essai de 30 jours instantanément.

Your trial license will be sent to your email address

Aucune restriction. 100 % débloqué. Pas de carte bancaire.

OR
bullet_checkedAucune carte de crédit ou création de compte requiseAucune restriction. 100 % débloqué. Pas de carte bancaire.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried Iron Suite
Réservez votre Démonstration en direct gratuite
Booking Badge

De confiance par des millions d'ingénieurs dans le monde entier

Logos des clients d'Iron Software
Obtenez Votre Consultation sans Engagement
Remplissez le formulaire ci-dessous ou envoyez un email à sales@ironsoftware.com
Vos informations seront toujours gardées confidentielles.
De confiance par des millions d'ingénieurs dans le monde entier
Logos des clients d'Iron Software
Obtenez votre clé d'essai 30 jours gratuitement.
Aucune carte de crédit ou création de compte requise
Bibliothèque C# NuGet pour PDF
Installer avec NuGet

Version : 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. Dans l'explorateur de solutions, faites un clic droit sur Références, Gestion des packages NuGet
  2. Sélectionnez Parcourir et recherchez « IronPDF »
  3. Sélectionnez le package et installez
C# PDF DLL
Télécharger DLL

Version : 2026.9

ou téléchargez l'installateur Windows ici.

  1. Téléchargez et décompressez IronPDF à un emplacement tel que ~/Libs dans votre répertoire de solution
  2. Dans l'explorateur de solutions Visual Studio, faites un clic droit sur Références. Sélectionnez Parcourir, « IronPDF.dll »

Licences à partir de 749 $