15.02.12 21:32, Alexander Galanin написав(ла):
Это смотря как распаковывать. Если распаковщик будет читать Central
Directory, то там в худшем случае надо пробегаться по списку всех
файлов, размер которого линейно зависит от N (по условию). Однако если
считать CentralDir и положить хотя бы в map (как в fuse-zip сделано), то
распаковка уже за O(N*log N) будет работать (с константой<  1).

Не подходит по условию. Раз для топикстартера даже простой внешний индекс выглядит «некрасиво», то разбирать бинарный CentralDir и создавать индекс в памяти уж совсем чёрная низкоуровневая магия.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/jhibdq$diq$1...@dough.gmane.org

Ответить