A method, an apparatus, and a computer program product for organizing and
searching catalogs based on compacting a hierarchical structure (150, 500)
into related arrays (210, 310, 410, 610; and 220, 320, 420, 620) are
disclosed. This involves the steps of: storing indices (1-9) according to
categories and subcategories in an array of indices (310), storing the
keys (S54-S48) according to the categories and subcategories in an array
(320) of keys, and linking each index of the array (310) of indices with
one or more corresponding keys of the array (320) of keys corresponding to
the category or subcategory associated with the index. The indices of a
category or subcategory are stored contiguously in the array (310). Each
index has one or more pointers recording the interrelationship of the
indices. The keys of a given index are also stored contiguously with keys
of any indices at the same corresponding category or subcategory level.
Um método, um instrumento, e um produto do programa de computador para organizar e procurarar os catálogos baseados em comprimir uma estrutura hierárquica (150, 500) nas disposições relacionadas (210, 310, 410, 610; e 220, 320, 420, 620) são divulgados. Isto envolve as etapas de: armazenando os índices (1-9) de acordo com categorias e os subcategories em uma disposição dos índices (310), armazenando as chaves (S54-S48) de acordo com as categorias e subcategories em uma disposição (320) das chaves, e ligando cada índice da disposição (310) dos índices com a uma ou o mais as chaves correspondentes da disposição (320) das chaves que correspondem à categoria ou ao subcategory associaram com o índice. Os índices de uma categoria ou de um subcategory são armazenados contiguously na disposição (310). Cada índice tem um ou mais ponteiro que grava o interrelationship dos índices. As chaves de um índice dado são armazenadas também contiguously com chaves de todos os índices na mesmo categoria ou nível correspondente do subcategory.