コード例 #1
0
ファイル: Huffman.cs プロジェクト: zzhi/Algs4Net
        private Node readTrie()
        {
            bool isLeaf = input.ReadBoolean();

            if (isLeaf)
            {
                return(new Node(input.ReadChar(), -1, null, null));
            }
            else
            {
                return(new Node(ZERO, -1, readTrie(), readTrie()));
            }
        }
コード例 #2
0
ファイル: Genome.cs プロジェクト: zzhi/Algs4Net
        /// <summary>
        /// Reads a binary sequence from standard input; converts each two bits
        /// to an 8-bit extended ASCII character over the alphabet { A, C, T, G };
        /// and writes the results to standard output.</summary>
        ///
        public void Expand()
        {
            int N = input.ReadInt();

            // Read two bits; write char.
            for (int i = 0; i < N; i++)
            {
                char c = input.ReadChar(2);
                output.Write(DNA.ToChar(c), 8);
            }
            output.Close();
            input.Close();
        }
コード例 #3
0
        public static void MainTest(string[] args)
        {
            BinaryInput  input  = new BinaryInput();
            BinaryOutput output = new BinaryOutput(args[0]);

            // read one 8-bit char at a time
            while (!input.IsEmpty)
            {
                int c = input.ReadChar();
                if (c == -1)
                {
                    break;
                }
                output.Write((byte)c);
            }
            output.Close();
        }