Mam kolekcję powiedzmy 10 000 elementów.
Muszę wybrać z niej powiedzmy 5000 elementów.
Nie wiem dokładnie jak to opisać ale chodzi o to by nie było to pierwsze 5000 ani bardzo losowe (bo losowo też może teoretycznie wybrać te 5000 pierwszych).
Chciałbym by dla kolekcji np 10 elementów, wybranych 5 elementów było: [0,2,5,7,10].
Chodzi o takie jakby uśrednianie danych gdzie mam 10 000 danych ale mogę wyświetlić tylko 5000 więc potrzebuję opuszczać np co drugi. Nie wiem ile danych będzie w sumie w kolekcji ale wiem, że zawsze będę wybierał te 5000. Jeśli kolekcja będzie mniejsza niż 5000 oczywiście wybrane muszę być wszystkie elementy.
Nie wiem jak się do tego zabrać w miarę najwydajniej.
Myślałem o czymś w rodzaju
a) biorę pierwszy i ostatni element
b) znajduję środek kolekcji (czyli mam już 3 elementy) i kolekcję mam podzieloną teraz na 2
c) biorę środek z pierwszej części, biorę środek z drugiej części (mam juz 5 elementów) i kolekcję na 4 części
d) itd.
Ale dla kolekcji kilkudziesięciu elementów takie coś będzie raczej wolne...
Może ktoś pomóc jak się do tego zabrać?
Może być pseudokod, opis idei, cokolwiek.