algoritmo php per la selezione della prossima persona in modalità round Robin

0

Ok, ho una lista di persone in un database, puoi indicarmi qualche codice di esempio che mi mostrerà un buon algoritmo per determinare chi è la prossima persona in coda?  Perché le persone possono essere aggiunte alla lista in mid stream, quindi non sai come scegliere sempre chi è il prossimo.

Ho passato molto tempo a cercare di capirlo e sono frustrato.

Se ho 10 persone e sono al numero 3 e 11 entra, dovrebbero andare sul retro, giusto? Quindi il prossimo è 4, ma andrebbero dietro 3, perché dopo 10 inizia sopra a 1, quindi 2 e 3, quindi dopo che 11 può entrare ...

Wow, questo è complesso.

Non posso avvolgere il mio cervello intorno ad esso. Conosci qualche algoritmo che posso dare un'occhiata per capirlo?

    
posta Richard Jones 07.12.2016 - 02:41
fonte

1 risposta

2

Ok, quindi hai una dimensione fissa Buffer circolare .

Hai bisogno di due indici nel buffer:

  • uno che indica dove si trova la fine della coda e
  • una che indica dove si trova l'inizio della coda

Hai anche bisogno dei concetti che il buffer possa avere la condizione:

  • Vuoto: quindi non c'è nessuno ad aspettare o servire, e,
  • Completo: poiché il buffer è fissato in dimensioni e potenzialmente pieno,    un buffer completo non può accettare nuove voci.

Entrambe le condizioni (completo / vuoto) vengono rilevate confrontando l'indice associato all'inizio della coda con l'indice associato alla fine della coda. Il test per vuoto e pieno sono tutti test leggermente diversi, e tutto dipende da come si definisce il significato di questi due indici. Vedi l'articolo di Wikipedia per maggiori informazioni.

    
risposta data 07.12.2016 - 03:02
fonte

Leggi altre domande sui tag