Implementierung der Warteschlange
Beispiel 1
Um eine Warteschlange in C Sharp zu erstellen, wird eine einfache Methode verwendet, da wir einen dynamischen Speicher mit einem „neuen“ Operator deklarieren. Ebenso wird die Warteschlange so deklariert. Zunächst müssen wir diese Bibliotheken erwähnen. Hier werden zwei Hauptheader -Dateien von Sammel- und Systemdateien erwähnt.
Mit System verwenden;
Das neue Objekt wird verwendet, um eine Warteschlange zu erstellen. Dieses Objekt wird dann der QT -Variablen zugewiesen. Später werden alle Vorgänge in der Warteschlange mit diesem Bediener durchgeführt.
Queue Qt = New Queue ();
Nach der Erstellung der Warteschlange können wir jetzt Elemente zur Warteschlange hinzufügen. Elemente werden durch eine integrierte Funktion der Warteschlange hinzugefügt, die über die Variable initiiert wird, der wir alle Behörden zum Zeitpunkt der Erklärung der Warteschlange zugewiesen haben, alle Funktionen der Warteschlange auszuführen. Eine Enqueue -Funktion wird verwendet, um Elemente in die Warteschlange hinzuzufügen.
Qt.Enqueue (1);
Das Element, das Sie eingeben möchten, ist im Parameter der Enqueue -Funktion geschrieben. Auf diese Weise können Sie der Warteschlange Werte hinzufügen. Diese Zugabe von Elementen ist manuell. Für diesen Zweck können wir auch Schleifen verwenden, um mehrere Elemente mit weniger zeitlicher Komplexität hinzuzufügen.
Um alle Elemente anzeigen. Eine weitere Merkmal einer Warteschlange, mit der die Gesamtzahl der dazu hinzugefügten Elemente angezeigt wird, besteht darin, eine Zählfunktion über das Objekt zu verwenden.
Qt.Zählen();
MCS ist der Compiler, der verwendet wird, um den Code in Ubuntu für C -scharfe Sprache zu kompilieren, um ausgeführt zu werden. Nach der Kompilierung des Quellcodes spielt Mono eine Rolle bei der Ausführung der CS -Datei mit A .Exe -Erweiterung.
$ Mcs Datei.CS
$ Mono -Datei.exe
Sie können sehen, dass der resultierende Wert alle in der Warteschlange vorhandene Elemente und die Gesamtzahl der Elemente enthält, die über die Grafschaft erhalten werden ().
Beispiel # 2
Wie bei der Zugabe einer Warteschlange und zur Entfernung wird eine Funktion der Warteschlange verwendet, um die in der Warteschlange vorhandene Elemente zu löschen. Wir müssen die Funktion des Entfernens in dem unten angegebenen Beispiel verwenden.
Fügen Sie zunächst Elemente durch die Enqueue -Funktion nach der Deklaration hinzu. Wir haben drei Elemente über die Enqueue -Funktion eingegeben. Jetzt werden wir einen Artikel entfernen. Der erste Artikel, der oben in der Warteschlange vorhanden ist. Zum Beispiel wird 16 zuerst hinzugefügt, sodass es zuerst entfernt wird.
Qt.Dequeue ();
Es ist nicht erforderlich, die Nummer oder das Element im Parameter der Dequeue-Funktion zu erwähnen, da diese integrierte Funktion das erste Element automatisch entfernen kann. Nach dem Entfernen des ersten Artikels kommt der zweite Artikel an die Stelle des ersten Artikels. Wenn Sie also die Dequeue -Funktion erneut verwenden, wird das zweite Element (neu zuerst) entfernt.
A für jede Schleife zeigt alle verbleibenden Elemente nach der Entfernung an. Führen Sie nun den Code aus, und Sie werden die Ergebnisse sehen, die das erste Element während der angezeigten zweiten und dritten Elemente entfernt wird.
Beispiel # 3
Wenn Sie den Wert der Warteschlange entfernen oder erhalten möchten, die am obersten Position vorhanden sind, können Sie dies erreichen, indem Sie zwei einfache Funktionen der Warteschlange verwenden. Einer ist die Funktion peek () und die andere ist die Funktion dequeue ():
Jetzt werden wir diese Funktionen im Beispiel verwenden, um ihre Funktionalität zu erläutern. Erstens werden wir eine Warteschlange erstellen und Elemente hinzuzufügen. Durch die Verwendung der Funktion count () werden alle Elemente der Warteschlange angezeigt. My_queue () ist das Objekt der neu deklarierten Warteschlange, wie unten gezeigt:
My_queue.zählen ();
Wie wir bereits erläutert haben, entfernt die Dequeue -Methode das Element, das oben in der Warteschlange vorhanden ist. Das oberste Element wird also von der Funktion dequeue () erhalten.
My_queue.Dequeue ();
Nach dem Entfernen wird die Anzahl der Zählungen verwendet, um die Anzahl der verbleibenden Elemente anzuzeigen. Ohne das Element zu entfernen, möchten wir zu diesem Zeitpunkt wissen, welches Element am obersten Position vorhanden ist. Wenn der erste Artikel entfernt wurde, wird der zweite automatisch zuerst automatisch. Nach Verwendung der Peak -Funktion erhalten wir also den zweiten Element, der derzeit nach dem FIFO -Ansatz der neue erste ist.
My_queue.Spähen();
Zählen Sie erneut die Anzahl der Elemente, um sicherzustellen, dass die Elemente nicht über die Peek -Funktion entfernt werden.
Bei der Ausführung sehen Sie, dass die Gesamtzahl der Elemente 5 betrug; Das oberste Element wird angezeigt und dann aus der Warteschlange entfernt. Anschließend wird die Anzahl der Elemente erneut angezeigt. Die aktuellen obersten Elemente werden erhalten, und die Zählfunktion zeigt, dass nichts entfernt wird.
Beispiel # 4
Überprüfen Sie es durch eine integrierte Funktion. Im Gegensatz zu C ++, C oder einer anderen Programmiersprache, da es für die Suche des Elements schwierig ist. C Sharp hat es einfacher gemacht, eine einfache Content () -Funktion zu verwenden, die die Verfügbarkeit des Artikels überprüft, indem Sie diesen Element in seinen Parameter aufnehmen.
Lassen Sie uns Elemente in die Warteschlange erstellen und eingeben. Mit einem „If-Statement“ wird die Bedingung verwendet, um das Element über die Funktion zu überprüfen () ().
Mein.Warteschlange.Enthält ("orange");
Wenn der Artikel vorhanden ist, wird die Verfügbarkeitsnachricht angezeigt.
Bei der Ausführung sehen Sie, dass das Element in der Warteschlange vorhanden ist.
Abschluss
C Sharp Warte wird durch das Objekt des neuen Operators deklariert. In C Sharp Programing Sprache enthält die Warteschlange eine integrierte Funktion für fast jeden Betrieb, der auf die Warteschlange angewendet wird. Zum Beispiel können wir Elemente hinzufügen, sie entfernen, in der Warteschlange suchen oder die obersten Elemente erhalten, die derzeit in der Warteschlange vorhanden sind. Es gibt mehrere Anwendungen, in denen Warteschlangen beispielsweise in Schaltern und Routern verwendet werden. Neben der täglichen Routine werden Switches in Semaphoren, CPU und Disc -Planung verwendet. Alle Funktionen der Warteschlange werden in den Beispielen verwendet, die im Linux -Betriebssystem implementiert sind.