Algorytmy i struktury danych · Senior · Pytanie 37 z 75
Wirtualizowana lista renderuje tylko widoczne wiersze ze 100 000 elementów o różnych wysokościach. Jak szybko znajduje pierwszy widoczny wiersz?
- ✓Poprawna odpowiedź: Wyszukiwaniem binarnym po skumulowanych przesunięciach wierszy
- 2Przechodzeniem wierszy od góry przy każdym przewinięciu
- 3Dzieleniem scrollTop przez średnią wysokość wiersza
Wyjaśnienie
Sumy prefiksowe wysokości wierszy są posortowane, więc wyszukiwanie binarne znajduje wiersz na scrollTop w O(log n). Przechodzenie to O(n) na przewinięcie; dzielenie przez średnią rozjeżdża się, gdy wysokości są różne.