Orada kitap kayıtları birkaç yüz veritabanında ve her kayıt bir yayımlamak zaman vardır. Web sitesinin ana, ben rastgele 10 kitap almak ve orada onları koymak için bazı kodları yazmak için gerekli. Gereksinimi yeni kitaplar sergilendi alma şansı daha yüksek olması gerektiğidir.
Zaman bir tamsayı olduğundan, ben her kitap için olasılığını hesaplamak için böyle düşünüyorum:
Probability of a book to be drawn = (current time - publish time of the book) / ((current time - publish time of the book1) + (current time - publish time of the book1) + ... (current time - publish time of the bookn))
Bir kitap çizilir sonra, döngünün sonraki turda eksi olacak - 10 kitap çizilmiş kadar payda dan (şimdiki zaman kitabın süresini yayımlamak) ve kalan kitapların her biri için olasılık yeniden hesaplamak, döngü devam eder.
Bu algoritma doğru biri mi?
Bu arada, web sitesi PHP ile yazılmış.
Eğer kafanızda daha iyi bir algoritma varsa bazı PHP kodları önermek için çekinmeyin.
Hepinize çok teşekkürler.