Heim > Backend-Entwicklung > C++ > Verwenden Sie die Sprache C, um das Löschen von Elementen in der Warteschlange zu erklären

Verwenden Sie die Sprache C, um das Löschen von Elementen in der Warteschlange zu erklären

王林
Freigeben: 2023-08-28 09:45:15
nach vorne
1059 Leute haben es durchsucht

Eine Datenstruktur ist eine Sammlung von Daten, die strukturiert organisiert sind. Es ist in zwei Typen unterteilt, wie unten erwähnt:

  • Lineare Datenstruktur – Daten sind linear organisiert. Zum Beispiel Arrays, Strukturen, Stapel, Warteschlangen und verknüpfte Listen.

  • Nichtlineare Datenstruktur – Daten sind hierarchisch organisiert. Zum Beispiel Bäume, Diagramme, Mengen, Tabellen.

Warteschlange

Es handelt sich um eine lineare Datenstruktur, das Einfügen erfolgt im Backend und das Löschen erfolgt im Frontend.

Verwenden Sie die Sprache C, um das Löschen von Elementen in der Warteschlange zu erklären

Die Reihenfolge der Warteschlange ist FIFO – First In, First Out

Operationen

  • Einfügen – Einfügen eines Elements in die Warteschlange
  • Löschen – Löschen eines Elements aus der Warteschlange.

Bedingungen

  • Warteschlangenüberlauf – Versuchen Sie, ein Element in eine volle Warteschlange einzufügen.

  • Die Warteschlange befindet sich im Streaming-Status − Versuchen Sie, ein Element aus der leeren Warteschlange zu entfernen.

Algorithmus

Nachfolgend finden Sie den Algorithmus zum Einfügen von ( ) -

  • Auf Warteschlangenüberlauf prüfen.
if (r==n)
printf ("Queue overflow")
Nach dem Login kopieren
  • Andernfalls fügen Sie ein Element in die Warteschlange ein.
q[r] = item
r++
Nach dem Login kopieren
gibt unten einen Algorithmus für

deletion ( )

    Überprüfen Sie, ob die Warteschlange läuft.
  • if (f==r)
    printf ("Queue under flow")
    Nach dem Login kopieren
      < li> Andernfalls entfernen Sie ein Element aus der Warteschlange.
    item = q[f]
    f++
    Nach dem Login kopieren
Unten ist der Algorithmus von

display ( ) -

    angegeben, der prüft, ob die Warteschlange leer ist.
  • if (f==r)
    printf("Queue is empty")
    Nach dem Login kopieren
      Andernfalls werden alle Elemente von „f“ bis „r“ gedruckt.
    • for(i=f; i<r; i++)
      printf ("%d", q[i]);
      Nach dem Login kopieren
    Programm

    Das Folgende ist das C-Programm zum Entfernen von Elementen aus der Warteschlange –

    #include <stdio.h>
    #define MAX 50
    void insert();
    int array[MAX];
    int rear = - 1;
    int front = - 1;
    main(){
       int add_item;
       int choice;
       while (1){
          printf("1.Insert element to queue </p><p>");
          printf("2.Delete an element from queue</p><p>");
          printf("3.Display elements of queue </p><p>");
          printf("4.Quit </p><p>");
          printf("Enter your choice : ");
          scanf("%d", &choice);
          switch (choice){
             case 1:
                insert();
             break;
             case 2:
                delete();
             case 3:
                display();
             break;
             case 4:
                exit(1);
             default:
             printf("Wrong choice </p><p>");
          }
       }
    }
    void insert(){
       int add_item;
       if (rear == MAX - 1)
          printf("Queue Overflow </p><p>");
       else{
          if (front == - 1)
          /*If queue is initially empty */
          front = 0;
          printf("Inset the element in queue : ");
          scanf("%d", &add_item);
          rear = rear + 1;
          array[rear] = add_item;
       }
    }
    void display(){
       int i;
       if (front == - 1)
          printf("Queue is empty </p><p>");
       else{
          printf("Queue is : </p><p>");
          for (i = front; i <= rear; i++)
             printf("%d ", array[i]);
             printf("</p><p>");
       }
    }
    void delete(){
       if (front == - 1 || front > rear){
          printf("Queue Underflow </p><p>");
          return ;
       }
       else{
          printf("Element deleted from queue is : %d</p><p>",array[front]);
          front = front + 1;
       }
    }
    Nach dem Login kopieren
    Ausgabe

    Wenn das obige Programm ausgeführt wird, erzeugt es das folgende Ergebnis –

    1.Insert element to queue
    2.Delete an element from queue
    3.Display elements of queue
    4.Quit
    Enter your choice: 1
    Inset the element in queue: 12
    1.Insert element to queue
    2.Delete an element from queue
    3.Display elements of queue
    4.Quit
    Enter your choice: 1
    Inset the element in queue: 23
    1.Insert element to queue
    2.Delete an element from queue
    3.Display elements of queue
    4.Quit
    Enter your choice: 1
    Inset the element in queue: 34
    1.Insert element to queue
    2.Delete an element from queue
    3.Display elements of queue
    4.Quit
    Enter your choice: 2
    Element deleted from queue is: 12
    Queue is:
    23 34
    1.Insert element to queue
    2.Delete an element from queue
    3.Display elements of queue
    4.Quit
    Enter your choice: 2
    Element deleted from queue is: 23
    Queue is:
    34
    1.Insert element to queue
    2.Delete an element from queue
    3.Display elements of queue
    4.Quit
    Enter your choice: 4
    Nach dem Login kopieren

    Das obige ist der detaillierte Inhalt vonVerwenden Sie die Sprache C, um das Löschen von Elementen in der Warteschlange zu erklären. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:tutorialspoint.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage