|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
02.06.2014, 20:45 | #1 |
Новичок
Джуниор
Регистрация: 01.06.2012
Сообщений: 2
|
Составить программу по имеющемуся псевдокоду
Помогите разобраться, как составить программу по псевдокоду
Построение оптимального кода Хаффмана (n,P) Обозначим n – количество символов исходного алфавита P – массив вероятностей, упорядоченных по убыванию C – матрица элементарных кодов L – массив длин кодовых слов Huffman (n,P) IF (n=2) C [1,1]:= 0, L [1]:= 1 C [2,1]:=1, L [2]:=1 ELSE q:= P [n-1]+P [n] j:= Up (n,q) (поиск и вставка суммы) Huffman (n-1,P) Down (n,j) (достраивание кодов) FI Функция Up (n,q) находит в массиве P место, куда вставить число q, и вставляет его, сдвигая вниз остальные элементы. DO (i=n-1, n-2,…,2) IF (P [i-1]≤q) P [i]:=P [i-1] ELSE j:=i OD FI OD P [j]:= q Процедура Down (n,j) формирует кодовые слова. S:= C [j,*] (запоминание j-той строки матрицы элем. кодов в массив S) L:= L[j] DO (i=j,…,n-2) C [i,*]:= C[i+1,*] (сдвиг вверх строк матрицы С) L [i]:=L [i+1] OD C [n-1,*]:= S, C [n,*]:= S (восстановление префикса кодовых слов из м-ва S) C [n-1,L+1]:=0 C [n,L+1]:=1 L [n-1]:=L+1 L [n]:=L+1 |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Написать программу для Паскаль 9 класс: составить программу которая печатает таблицу умножения и сложения натуральных чисел | goodula | Помощь студентам | 0 | 23.01.2014 17:39 |
Модуль для Системы Moodle, почти аналогичный уже имеющемуся, на php | Ableben | Помощь студентам | 0 | 15.05.2013 23:52 |
Модуль для Системы Moodle, почти аналогичный уже имеющемуся на php | Ableben | Фриланс | 0 | 15.05.2013 23:50 |
Составить программу вычисления и печати таблицы значений функции при заданных значениях параметров Составить программу вычисле | Марина1986 | C/C++ Сетевое программирование | 1 | 08.05.2013 13:34 |
никак не могу составить программы на паскале... кто нибудь помогииите составить программу | program_1 | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 04.12.2012 19:52 |