/// <summary> /// Создание дерева кодирования по таблице частот /// </summary> /// <param name="frequencyTable"></param> public CodeTree(FrequencyTable frequencyTable) { lastNodes = new List <CodeTreeNode>(); foreach (var i in frequencyTable) { lastNodes.Add(new CodeTreeNode(i.Value, i.Key, null, null)); } currentNodes = new List <CodeTreeNode>(); foreach (var i in lastNodes) { currentNodes.Add(i); } BuildTree(); }
static FrequencyTable FrequencyTableInput() { var frequencies = new FrequencyTable(); Console.WriteLine("Введите количество символов в исходном алфавите"); int n = Input.IntInput(1, int.MaxValue); for (int i = 0; i < n; i++) { Console.WriteLine("Введите символ"); string letter = Console.ReadLine(); Console.WriteLine("Введите частоту символа"); double frequency = Input.DoubleInput(0, 1); frequencies.Add(letter, frequency); } return(frequencies); }