Kunnen we stack en wachtrij implementeren met behulp van een gekoppelde lijst?
Kunnen we stack en wachtrij implementeren met behulp van een gekoppelde lijst?

Video: Kunnen we stack en wachtrij implementeren met behulp van een gekoppelde lijst?

Video: Kunnen we stack en wachtrij implementeren met behulp van een gekoppelde lijst?
Video: Section 6 2024, December
Anonim

Elke knoop heeft een waarde en a koppeling naar het volgende knooppunt. Twee populaire toepassingen van gekoppelde lijst zijn stapelen en in de rij zetten . Rij : Rij is een datastructuur die het First in First out (FIFO)-principe gebruikt. Wachtrij kan zijn geïmplementeerd door stapelen , array en gekoppelde lijst.

Dienovereenkomstig, kunnen we een wachtrij implementeren met behulp van een gelinkte lijst?

EEN rij kan gemakkelijk zijn geïmplementeerd met behulp van een gekoppelde lijst . in afzonderlijk implementatie van gekoppelde lijsten , wachtrijen gebeurt aan de staart van de lijst en het uit de wachtrij halen van items gebeurt aan het hoofd van de lijst . We moeten de aanwijzer naar het laatste knooppunt behouden om de efficiëntie van O(1) voor invoeging te behouden.

Vervolgens is de vraag: is een gekoppelde lijst een stapel? EEN stapelen is een datastructuur met een bepaalde interface en gedrag: elementen kunnen worden toegevoegd aan de stapelen met "push" en verwijderd met "pop", en ze worden verwijderd in de volgorde Last-In-First-Out. EEN gekoppelde lijst is een datastructuur met een bepaalde relatie tussen elementen in het geheugen.

Wat dit betreft, kunnen we stack implementeren met behulp van wachtrij?

Implementeren een stapelen met behulp van enkel rij . We zijn gegeven rij datastructuur, de taak is om implementeren stack met behulp van alleen gegeven rij data structuur. Deze oplossing gaat ervan uit dat: wij kunnen zoek de maat van rij op elk punt. Het idee is om een nieuw ingevoegd element altijd aan de achterkant van rij , waarbij de volgorde van eerdere elementen hetzelfde blijft.

Wat zijn de toepassingen van wachtrij?

Toepassingen van wachtrij Verzorgen van verzoeken op een enkele gedeelde bron, zoals een printer, CPU-taakplanning enz. In het echte leven kunnen callcenter-telefoonsystemen gebruikt wachtrijen om mensen die ze bellen in een bestelling vast te houden, totdat een servicevertegenwoordiger vrij is. Afhandeling van interrupts in realtime systemen.

Aanbevolen: