コード例 #1
0
        public void EncondeAndDecode_WithTextTest()
        {
            string text        = "aabbbc";
            var    huffmanTree = new HuffmanCode(text);

            string encode = huffmanTree.Encode(text);
            string decode = huffmanTree.Decode(encode);

            Assert.AreEqual("111100010", encode);
            Assert.AreEqual(text, decode);
        }
コード例 #2
0
        public void Coursework_Huffman_Test()
        {
            string text        = "often this information is the individual identification";
            var    a           = text.Length;
            var    huffmanTree = new HuffmanCode(text);

            var    b      = huffmanTree.CodeTable.OrderBy(x => x.Value.Length).ToList();
            string encode = huffmanTree.Encode(text);
            string decode = huffmanTree.Decode(encode);

            Assert.AreEqual(text, decode);
        }
コード例 #3
0
        public void EncondeAndDecode_WithGivenFrequenciesTest()
        {
            string message      = "aabbbc";
            var    alphabetFreq = new Dictionary <char, int>()
            {
                ['a'] = 2,
                ['b'] = 3,
                ['c'] = 1
            };

            var huffmanTree = new HuffmanCode(alphabetFreq);

            string encode = huffmanTree.Encode(message);
            string decode = huffmanTree.Decode(encode);

            Assert.AreEqual("111100010", encode);
            Assert.AreEqual(message, decode);
        }