4551
правка
Irina (обсуждение | вклад) |
Irina (обсуждение | вклад) |
||
Строка 32: | Строка 32: | ||
'''Определение 1.''' Пусть дан суффиксный массив A[1, n]. Функция <math>\Psi : [1, n] \to [1, n]</math> определена таким образом, что для всех <math>1 \le i < n</math> выполняется соотношение <math>A[\Psi(i)] = A[i] + 1</math>. Исключением является A[1] = n, в этом случае имеет место <math>A[\Psi( | '''Определение 1.''' Пусть дан суффиксный массив A[1, n]. Функция <math>\Psi : [1, n] \to [1, n]</math> определена таким образом, что для всех <math>1 \le i < n</math> выполняется соотношение <math>A[\Psi(i)] = A[i] + 1</math>. Исключением является A[1] = n, в этом случае имеет место <math>A[\Psi(1)] = 1</math>, так что функция <math>\Psi</math> является перестановкой. | ||
Гросси и Виттер используют иерархическую декомпозицию массива А, основанную на <math>\Psi^2</math>. рассмотрим первый уровень этой иерархической декомпозиции. Пусть <math>A_0 = A</math> – исходный суффиксный массив. Битовый вектор <math>B^0 [1, n]</math> определен таким образом, что <math>B^0 [i] = 1</math> в том и только том случае, если A[i] четно. Кроме того, пусть | Гросси и Виттер используют иерархическую декомпозицию массива А, основанную на <math>\Psi^2</math>. рассмотрим первый уровень этой иерархической декомпозиции. Пусть <math>A_0 = A</math> – исходный суффиксный массив. Битовый вектор <math>B^0 [1, n]</math> определен таким образом, что <math>B^0 [i] = 1</math> в том и только том случае, если A[i] четно. Кроме того, пусть <math>\Psi_0 [1, \lceil n/2 \rceil ]</math> содержит последовательность значений <math>\Psi(i)</math> для тех аргументов i, для которых <math>B^0[i] = 0</math>. Наконец, пусть <math>A_1 [1, \lfloor n/2 \rfloor ]</math> будет подпоследовательностью <math>A_0 [1, n]</math>, образованной четными значениями <math>A_0[i]</math>, деленными на 2. | ||
Hk — это минимальное среднее количество битов, необходимых для кодирования одного символа с помощью любого алгоритма сжатия, который фиксирует кодовое слово на основе контекста k-го символа, следующего за кодируемым символом. В [6] дано более формальное определение. | |||
2 Далее приводится описание, близкое к изложенному в [9]. | 2 Далее приводится описание, близкое к изложенному в [9]. |
правка