Home

Archivos

Buscar

Categorías

Feeds:

RSS / Atom

Top Coder - Huffman Decoding· 17. December 2008, 00:57

Esto lo implementé en Pascal para un proyecto de la universidad hace varios años (decodificar y desplegar archivos GIF).

Enunciado

    class HuffmanDecoding
    {
        public static string decode(string archive, string[] dictionary)
        {
            StringBuilder decodificado = new StringBuilder();
            StringBuilder st = new StringBuilder();
            foreach (char car in archive)
            {
                st.Append(car);
                //Array.Contains() jala en VC#2008 pero no en top coder creo que es algun using
                //if (dictionary.Contains(st.ToString()))
                if (!(Array.IndexOf(dictionary,st.ToString()).Equals(-1)))
                {
                    decodificado.Append((char)(Array.IndexOf(dictionary,st.ToString())+'A'));
                    st.Remove(0, st.Length);
                }
            }
            return decodificado.ToString();
        }
    }