C # file d'attente

C # file d'attente
La file d'attente est un type de collection qui n'est pasgénérique et présente dans le fichier d'en-tête des collections système. Nous avons toujours besoin de cette bibliothèque pour être incluse dans tous les codes liés à la file d'attente. La file d'attente est une structure de données créée dynamiquement, et sa taille peut être augmentée en fonction de la demande. La file d'attente est mise en œuvre en suivant la première approche in et première sortie. La file d'attente peut stocker les mêmes types de données et différents. La structure de données de file d'attente est utile lorsque vous devez obtenir des données de la même manière qu'elles sont stockées. Cet article comprendra toutes les fonctionnalités possibles concernant les files d'attente.

Implémentation de la file d'attente

Exemple 1

Pour créer une file d'attente en C Sharp, une méthode simple est utilisée car nous déclarons une mémoire dynamique en utilisant un «nouvel» opérateur; De même, la file d'attente est déclarée de cette façon. Tout d'abord, nous devons mentionner ces bibliothèques utiles pour exécuter le programme C Sharp Fitre. Deux fichiers d'en-tête principaux de la collection et du système sont mentionnés ici.

Utilisation du système;

Le nouvel objet est utilisé pour créer une file d'attente. Cet objet est ensuite affecté à la variable QT. Plus tard, toutes les opérations de la file d'attente sont effectuées en utilisant cet opérateur.

File d'attente qt = nouvelle file d'attente ();

Après la création de la file d'attente, nous pouvons maintenant ajouter des éléments à la file d'attente. Les éléments sont ajoutés via une fonction intégrée de la file d'attente qui est lancée via la variable, à laquelle nous avons attribué toutes les autorités pour remplir toutes les fonctions de la file d'attente au moment de la déclaration de la file d'attente. Une fonction d'observation est utilisée pour ajouter des éléments dans la file d'attente.

QT.ENQUEUe (1);

L'élément que vous souhaitez saisir est écrit dans le paramètre de la fonction d'Enqueue. De cette façon, vous pouvez ajouter des valeurs à la file d'attente. Cet ajout d'éléments est manuel. Nous pouvons également utiliser des boucles à cet effet pour ajouter plusieurs éléments avec moins de complexité de temps.

Pour afficher tous les éléments, nous utilisons une boucle pour chaque boucle, ce qui apportera un objet à itérer dans la file d'attente. Une autre caractéristique d'une file d'attente utilisée pour afficher le nombre total d'éléments qui y sont ajoutés consiste à utiliser une fonction de nombre via l'objet.

QT.Compter();

MCS est le compilateur utilisé pour compiler le code dans Ubuntu pour C Sharp Language pour être exécuté. Après compilation du code source, Mono joue un rôle dans l'exécution du fichier CS en utilisant un .extension exe.

Fichier $ MCS.CS
$ Mono fichier.exe

Vous pouvez voir que la valeur résultante contient tous les éléments présents dans la file d'attente et le nombre total d'éléments obtenus via le comte ().

Exemple n ° 2

Comme l'ajout d'une file d'attente et pour la suppression, une fonction de la file d'attente est utilisée pour supprimer les éléments présents dans la file d'attente. Nous devons utiliser la fonction de suppression dans l'exemple fourni ci-dessous.

Tout d'abord, ajoutez des éléments via la fonction d'observation après la déclaration. Nous avons entré trois éléments via la fonction d'EQueue. Maintenant, nous supprimerons un élément. Le premier élément présent en haut de la file d'attente sera d'abord supprimé. Par exemple, 16 est ajouté en premier, il sera donc supprimé en premier.

QT.Dequeue ();

Il n'est pas nécessaire de mentionner le nombre ou l'élément dans le paramètre de la fonction de déshyche car il est évident que cette fonctionnalité intégrée supprime automatiquement le premier élément. Après avoir retiré le premier élément, le deuxième élément se présente à la place du premier élément. Ainsi, si vous utilisez à nouveau la fonction de désagréation, le deuxième élément (nouveau d'abord) sera supprimé.

A pour chaque boucle affichera tous les éléments restants après le retrait. Maintenant, exécutez le code, et vous verrez les résultats que le premier élément est supprimé tandis que les deuxième et troisième éléments sont affichés.

Exemple n ° 3

Si vous souhaitez supprimer ou obtenir la valeur de la file d'attente qui est présente à la position la plus haute, vous pouvez y parvenir en utilisant deux fonctionnalités simples de la file d'attente. L'un est la fonction peek (), et l'autre est la fonction deQueue ():

  • Peek (): c'est la méthode utilisée pour retourner l'objet au début de la file d'attente sans retirer l'élément.
  • Dequeue (): cette fonction renvoie l'objet au début avec quelques modifications. Cela signifie que cela supprime l'élément le plus haut de la file d'attente.

Maintenant, nous utiliserons ces fonctionnalités dans l'exemple pour développer leur fonctionnalité. Tout d'abord, nous allons créer une file d'attente et y ajouter des éléments. En utilisant la fonction count (), nous afficherons tous les éléments ajoutés à la file d'attente. My_queue () est l'objet de la file d'attente nouvellement déclarée, comme indiqué ci-dessous:

My_queue.compter ();

Comme nous l'avons discuté précédemment, la méthode de désagréation supprime l'élément présent en haut de la file d'attente. L'article le plus haut sera donc obtenu par la fonction deQueue ().

My_queue.Dequeue ();

Après le retrait, la fonction de nombre est utilisée pour montrer le nombre d'éléments restants. Sans retirer l'article, nous voulons savoir, à ce stade quel élément est présent à la position la plus haute. Lorsque le premier élément a été supprimé, le second devient d'abord automatiquement. Ainsi, en utilisant la fonction de pointe, nous obtiendrons le deuxième élément qui est actuellement le nouveau premier après l'approche FIFO.

My_queue.Peek ();

Encore une fois, comptez le nombre d'éléments maintenant pour vous assurer que les éléments ne sont pas supprimés via la fonction PEEK.

En exécution, vous pouvez voir que le nombre total d'articles était de 5; L'élément le plus haut s'affiche puis retiré de la file d'attente. Ensuite, la fonction Count affichera à nouveau les éléments. Les éléments les plus hauts actuels seront obtenus, et la fonction de nombre montre que rien n'est supprimé.

Exemple n ° 4

Vérifiez-le via une fonctionnalité intégrée. Contrairement à C ++, C ou à tout autre langage de programmation, car il est difficile pour l'élément de rechercher, nous utilisons différentes méthodes comme la boucle pour itérer via la recherche de l'élément pertinent. C Sharp a facilité la tâche en utilisant une fonction contenue simple () qui vérifie la disponibilité de l'élément en prenant cet élément dans son paramètre.

Laissez-nous créer et entrer des éléments dans la file d'attente. Un «IF-Statement» utilise la condition pour vérifier l'élément via la fonction contient ().

Mon.file d'attente.Contient ("orange");

Si l'article est présent, le message de disponibilité sera affiché.

Sur l'exécution, vous pouvez voir que l'élément est présent dans la file d'attente.

Conclusion

C La file d'attente est déclarée via l'objet du nouvel opérateur. Dans C Sharp Programming Language, la file d'attente contient une fonction intégrée pour presque toutes les opérations appliquées à la file d'attente. Par exemple, nous pouvons ajouter des éléments, les supprimer, rechercher dans la file d'attente ou obtenir les éléments les plus haut qui sont actuellement présents dans la file d'attente. Il existe plusieurs applications dans lesquelles les files d'attente sont utilisées, par exemple, dans les commutateurs et les routeurs. Outre la routine de vie quotidienne, les commutateurs sont utilisés dans les sémaphores, le processeur et la planification des disques. Toutes les fonctionnalités de la file d'attente sont utilisées dans les exemples implémentés dans le système d'exploitation Linux.