public double Dot(double[] that)
        {
            double      sum   = 0.0;
            Queue <int> queue = new Queue <int>();

            queue = st.Keys();
            int number = 0;
            int size   = queue.Size();

            for (int i = 0; i < size; i++)
            {
                number = queue.dequeue();
                sum   += that[number] * this.Get(number);
            }
            return(sum);
        }