Я могу предложить вам простое решение для балансировки как памяти, так и компьютерной обработки. Вы сохраняете в памяти только небольшие изображения, такие как миниатюры, и сохраняете только около 20 из них. Один проект, которым я занимаюсь, - я сохраняю 20 миниатюрных изображений (100 x 100), к которым недавно обращались, что не требует больших затрат памяти. Я считаю, что это все время стоит около 200 кб, но по сравнению с общедоступной памятью. Я думаю, что это достаточно хорошо.
Это также зависит от вашего варианта использования: если пользователь прокручивает очень быстро, и вы не знаете, когда он пойдет. Вы можете иметь даже меньшие изображения, чем thumnail, и когда вы показываете его в UIImageView, вы изменяете размер, чтобы соответствовать. Когда пользователь останавливает прокрутку на некоторое время. Вы можете начать загрузку больших изображений, и тогда у вас будут более хорошие изображения. Пользователь может даже не заметить о процессе
Я не думаю, что есть решение, которое может быть быстрым и использовать как можно меньше памяти. Потому что у нас есть память, может быть, не большая, но достаточно, если мы используем ее с умом.