Пример #1
0
        static void Main(string[] args)
        {
            const int trials  = 10;
            var       putTime = 0L;
            var       setTime = 0L;

            for (var j = 0; j < trials; j++)
            {
                var random = new Random();
                var bst    = new BSTTimer <int, int>();
                var data   = new int[1000000];
                for (var i = 0; i < data.Length; i++)
                {
                    data[i] = random.Next();
                }

                FrequencyCounter.MostFrequentlyKey(bst, data);
                putTime += bst.PutTime;
                setTime += bst.SetTime;
            }

            putTime /= trials;
            setTime /= trials;
            Console.WriteLine("Put: " + putTime + "ms Get: " + setTime + "ms ratio: " + (double)putTime / setTime);
        }
        static void Main(string[] args)
        {
            var n       = 1000000;
            var m       = 10;
            var addBy10 = 3;

            for (var i = 0; i < addBy10; i++)
            {
                var bst  = new BinarySearchSTAnalysis <long, int>(n);
                var data = SearchCompare.GetRandomArrayLong(n, (long)Math.Pow(2, m), (long)Math.Pow(2, m + 1));
                FrequencyCounter.MostFrequentlyKey(bst, data);
                Console.WriteLine("m=" + m + "\t" + bst.GetTimer.ElapsedMilliseconds + "\t" + bst.PutTimer.ElapsedMilliseconds + "\t" + bst.PutTimer.ElapsedMilliseconds / (double)bst.GetTimer.ElapsedMilliseconds);
                m += 10;
            }

            var st = new BinarySearchSTAnalysis <string, int>();

            FrequencyCounter.MostFrequentlyWord("tale.txt", 0, st);
            Console.WriteLine("tales\t" + st.GetTimer.ElapsedMilliseconds + "\t" + st.PutTimer.ElapsedMilliseconds + "\t" + st.PutTimer.ElapsedMilliseconds / (double)st.GetTimer.ElapsedMilliseconds);
            Console.ReadLine();
        }