• Non ci sono risultati.

static public Coda enqueue(Coda c, int n){ if (codapiena(c)) System.out.println("Coda piena&#34

N/A
N/A
Protected

Academic year: 2021

Condividi "static public Coda enqueue(Coda c, int n){ if (codapiena(c)) System.out.println("Coda piena&#34"

Copied!
2
0
0

Testo completo

(1)

class Coda {

/** Implementazione di una coda mediante vettore circolare */

private int[] V;

private int testa; // indice valore piu' vecchio private int coda; //prima posizione libera public Coda(int dim)

{ //vettore circolare V = new int[dim];

testa = 0;

coda = 0;

}

static public Coda enqueue(Coda c, int n){

if (codapiena(c)) System.out.println("Coda piena");

else { c.V[c.coda] = n; // inserisce n in coda c.coda = (c.coda+1)%(c.V).length;

// c.coda indica prima posizione libera }

return(c);

}

static public Coda dequeue(Coda c){

if (!codavuota(c)) c.testa = (++(c.testa))%(c.V).length;

//si incrementa testa di 1 per rimuovere un valore else System.out.println("coda vuota");

return(c);

}

static public int top(Coda c){

if (!codavuota(c)) return(c.V[c.testa]);

else { System.out.println("coda vuota");

return(-1);}

}

static public boolean codavuota(Coda c){

return(c.testa==c.coda); // coda c vuota sse c.testa==c.coda }

static public boolean codapiena(Coda c){ return((c.coda+1)%(c.V).length==c.testa);

//coda c piena sse c.testa == c.coda+1 modulo dimensione vettore c.V }

static public void stampacoda(Coda c){

while (!codavuota(c)){

System.out.println("elemento coda = "+top(c)); // stampa il valore piu' // vecchio nella coda c=dequeue(c);} // e lo rimuove

}

static public int dimensione(Coda c){

return(c.V.length);} // restituisce dimensione max della coda }// fine classe Coda

(2)

public class Provacoda {

public static void main(){

Coda c = new Coda(20);

c = Coda.enqueue(Coda.enqueue(c,3),-1);

System.out.println("primo ="+Coda.top(c));

Coda.stampacoda(c);

c = Coda.dequeue(c);

System.out.println("secondo ="+Coda.top(c));

}

} // fine classe Provacoda

Riferimenti

Documenti correlati

La Raccomandazione prevede che ciascuno Stato dell’Unione Europea, in base alle conoscenze scientifiche attuali, provveda affinché gli allevatori effettuino una

Con nota prot. 379 del 7 gennaio 2019, la Questura di Biella segnalava la necessità di ripristinare la tinteggiatura delle pareti e del soffitto degli alloggi di servizio al 2^

Fermi / teoria dei giochi Plank / teoria quantistica Newton / caduta dei gravi Einstein / teoria della relatività Galileo / metodo sperimentale. "Il cantante Tizio e' un cane;

c) materiali di interesse marginale — materiali che costituiscono una distrazione per i suini ma che non dovrebbero essere considerati tali da soddisfare i loro

1973: UK, Irlanda e Danimarca entrano nell'UE Il governo inglese riteneva che fosse nel suo interessa far parte del processo di integrazione economica europea, in particolare per

Separare i due filetti, stando a filo della car- tilagine centrale, usando un coltello per de- nervare o disossare.. Afferrare la pelle tirandola verso

P er la prima volta il comune di Milano potrà avvalersi delle competenze e conoscenze di due medici veterinari come Garanti per la tutela degli animali. Paola Fossati e Gustavo

E nonostante tutto cio' che sta accadendo ancora oggi, dopo un anno, penso che questa esprienza bruttissima ci cambierà tutti e che noi stiamo com- prendendo che