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

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


--
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]
Archive: http://lists.debian.org/[email protected]

Ответить