View Full Version : [C++] coda di priorità
mistergks
23-04-2013, 12:09
Il seguente esercizio chiede di fare una classe coda..
La mia domanda é: ma la coda é gia implementata come le list?! E quindi posso usarla cosi?(queue <int> coda).
Utilizzare l’ereditarietà per realizzare l’interfaccia della classe CodaPerPrimaGradiAlti che implementa una coda di priorità di Marinai, in cui i marinai che entrano sono serviti in base al loro ruolo (da marinaio semplice ad ammiraglio) e, a parità di grado, nel consueto ordine (FIFO).
Beh credo che la soluzione sia questa:
CodaPerPrimaGradiAlti : public Marinaio{
Public:
CodaPerPrimaGradiAlti();
Marinaio next();
Void push();
Private:
List <Marinaio> marinai;
};
mistergks
23-04-2013, 14:49
Up
Inviato dal mio GT-I9003 usando Tapatalk
tomminno
23-04-2013, 15:32
Il seguente esercizio chiede di fare una classe coda..
La mia domanda é: ma la coda é gia implementata come le list?! E quindi posso usarla cosi?(queue <int> coda).
Utilizzare l’ereditarietà per realizzare l’interfaccia della classe CodaPerPrimaGradiAlti che implementa una coda di priorità di Marinai, in cui i marinai che entrano sono serviti in base al loro ruolo (da marinaio semplice ad ammiraglio) e, a parità di grado, nel consueto ordine (FIFO).
Beh credo che la soluzione sia questa:
CodaPerPrimaGradiAlti : public Marinaio{
Public:
CodaPerPrimaGradiAlti();
Marinaio next();
Void push();
Private:
List <Marinaio> marinai;
};
list non è una coda, invece queue lo è.
La tua classe è sbagliata: una CodaPerPrimaGradiAlti (che nome orrendo!) non è un Marinaio!
L'esercizio chiede un'altra cosa riguardo all'ereditarietà. Ma essendo un esercizio lascio a te capire cosa ;)
Infine push mi sa che gli manca qualcosa, oltre a mancare l'intera implementazione della coda a priorità.
mistergks
23-04-2013, 15:45
CODE]
CodaPerPrimaGradiAlti : public list <Marinaio> {
Public:
CodaPerPrimaGradiAlti();
Marinaio next();
Void push(Marinaio m);
};
[/CODE]
Ora puo andare? L esercizio richiede solo l'interfaccia della classe .h .
Ma la coda non si fa con le liste?!
O é una struttura a parte? Questo non capisco!
In pratica é come se mi fosse richiesta l' mplementazione della classe list vero?!
The_ouroboros
24-04-2013, 06:56
[ot]
ma usate i nomi canonici per gli ADT.
Non si può sentire coda :doh:
mistergks
24-04-2013, 11:31
[ot]
ma usate i nomi canonici per gli ADT.
Non si può sentire coda :doh:
Cioe? Queue?!
Inviato dal mio GT-I9003 usando Tapatalk
mistergks
24-04-2013, 14:48
leggevo che code e pile(stack) non sono dei veri container ma degli adattatori. Inoltre, non hanno iteratori e quindi non si possono usare su di esse!
E poi anche che possono essere create con liste o vector (tramite ereditarietá ) . Altrimenti di default usano i deque.
Confermate?!
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.