|
|
Quali sono le differenze tra una circolare Queue & una coda lineare Per capire rapidamente la differenza principale tra una coda lineare e una coda circolare , si consideri un esempio di vita reale . Se un gruppo di persone che sono in attesa in fila per essere seduti in un ristorante , quando il tavolo è pronto , le persone al fronte della linea sedersi e nuovi arrivati prendono il loro posto sul retro della linea. Una coda circolare è più simile a un gioco delle sedie musicali . I nuovi arrivati possono entrare ovunque ci sia spazio , purché vi sia una sedia vuota . Una coda lineare è come una linea retta in cui tutti gli elementi o le istruzioni stare uno dietro l'altro . C'è un inizio definito e una fine definita della coda . Compiti allineati in questo formato coda vengono eseguiti nell'ordine della loro collocazione , su base FIFO ( First In First Out ) . Una coda circolare ha una struttura circolare . L'ultimo elemento di questa coda è collegato con il primo elemento , completando così il cerchio . Compiti in questo formato non sono essenzialmente eseguite nell'ordine in cui vengono inviati . una coda lineare , una nuova attività è inseriti alla fine della lista , mentre Cancellandolo nella parte anteriore della lista . Le estremità anteriori e posteriori sono responsabili per il monitoraggio dello stato della coda . Una coda può avere un numero finito di elementi , predefinita . Ogni nuovo inserimento deve passare una " coda piena" prova , e allo stesso modo , prima di una delezione , una " coda vuota " prova deve essere trasmesso . " coda piena " che controlla se vi è spazio per l'inserimento , e " coda vuota " fa che non ci sono elementi in attesa di essere eliminato e la coda già non è vuoto . In una coda circolare , inserimenti ed eliminazioni possono accadere in qualsiasi posizione nella coda e non necessariamente in un ordine sequenziale . una coda lineare per un nuovo inserimento alla fine , vi deve essere uno spazio vuoto nella parte anteriore e tutti gli elementi intermedi deve muovere di uno spazio per creare una vacante per il nuovo inserimento . Ogni volta che c'è un nuovo inserimento , la procedura deve essere ripetuta. Inserimento e cancellazione sono quindi due fasi differenti . Questo approccio richiede molto tempo e risorse di calcolo . D'altra parte , in una coda circolare , inserimento e cancellazione possono accadere simultaneamente . Università (College)
|
|
Copyright © https://www.educazione.win - Tutti i diritti riservati |