03/05/14 16:09
bububs
Allora dovrei gestire una coda attraverso una lista concatenata circolare sotto forma di classe.
Io ho fatto in questo modo però non so se è giusto. (Come ho fatto non credo sia circolare)
Io ho fatto in questo modo però non so se è giusto. (Come ho fatto non credo sia circolare)
class ele { private: int info; ele* punt; public: ele() { punt = NULL; } ele(int x, ele* e) { info = x; punt = e; } int get_info() {return info;} ele* get_punt() {return punt;} void set_info(int x) {info = x;} void set_punt(ele* s) {punt = s;} }; class coda { private: ele* l; public: coda() { l = NULL; } void stampa() { ele* t = l; while (t != NULL) { cout<< t->get_info() << " "; t = t->get_punt(); } } bool isEmpty() { return (l == NULL); } void add_top(int x) {//inserisce in testa alla lista ele* t = new ele(x, l); l = t; } void add_bot(int x) {//inserisce in fondo alla lista if ( isEmpty() ) add_top(x); else { ele* t, * s; s = new ele; s->set_info(x); t = l; while (t->get_punt() != NULL) t = t->get_punt(); t->set_punt(s); s->set_punt(NULL); } } }; int main() { coda c; c.add_bot(1); c.add_bot(2); c.add_bot(3); c.stampa(); return 0; }
Ultima modifica effettuata da bububs 03/05/14 16:13
aaa