Lista i nextId

0

może to skutek godziny, ale raczej mojego poziomu w algorytmach ;p . Mam listę studentów z której korzysta profesor i sobie wybiera następnych studentów (metoda public Student getNext() ) a gdy dochodzi do końca zaczyna od początku listy. Mam też "Removera", który może usunąć dowolnego studenta nagle z listy. Remover powiadamia o tym fakcie profesora, który się dostosowuje jeżeli usunięto studenta z mniejszym id niż nextId , bo wtedy kolejni studenci na liście będą mieć id o 1 mniejsze. Do tego dochodzi jeszcze Inserter studentow, ale to już pomijam, bo sytuacja jest podobna. Trochę to wszystko zagmatwane a updateIds() w tej liście-bazie chyba trochę nieładne. jak wygląda prawidłowe podejście do czegoś takiego? Mogę wszystko zmienić, zrezygnować z id itd.. chodzi mi tylko o mechanizm jaki pokazuje w main. wszystko o czym pisze tyczy się modelu, obiekty nie są duże i będzie ich <300.

http://ideone.com/G4R2wW to co wymyśliłam póki co ;/
interfejsy itd.. w kodzie pomijam wszystko chodzi mi tylko o zasadę działania. patrzyłam na Guave, na różne hipsterskie dla mnie kolekcje typu navigableset ,ale nie widzę niczego co by mi pomogło.

0

Może zamiast listy użyj seta :)

1

A nie da rady zaimplementować prostej listy cyklicznej (ofc chodzi mi o wrapper który będzie delegował do jakiejś standardowej Listy/Kolejki!) z iteratorem który wybiera elementy modulo rozmiar listy?

1 użytkowników online, w tym zalogowanych: 0, gości: 1