Пример #1
0
        public static void Mainx()
        {
            //Random random = new Random();
            //int size = 15;
            //int[] data = new int[size];
            //for (int i = 0; i < data.Length; i++) {
            //    data[i] = random.Next(0, 101);
            //}
            //FormBS form = new FormBS(data);
            //form.Show();
            //BubbleSortSimple(data, form);
            //Thread.Sleep(1000);

            Random random = new Random();
            int    size   = 15;

            int[] data = new int[size];
            for (int i = 0; i < data.Length; i++)
            {
                data[i] = random.Next(0, 101);
            }
            pgFormData1 = data;
            pgFormData2 = data;

            thread1 = new Thread(BubbleSortSimple2);
            thread2 = new Thread(BubbleSortFinal2);

            pgForm1 = new FormBS(pgFormData1);
            pgForm2 = new FormBS(pgFormData2);
            pgForm1.Show();
            pgForm2.Show();
            //pgForm2.SetDesktopLocation(pgForm1.Right + 1, pgForm1.Top);
            pgForm2.Location = new System.Drawing.Point(pgForm1.Right + 1, pgForm1.Top);

            thread1.Start();
            thread2.Start();
            while ((end1 == false) || (end2 == false))
            {
                pgForm1.ShowData(indexA, indexA + 1);
                pgForm2.ShowData(indexB, indexB + 1);
                do
                {
                    Thread.Sleep(10);
                } while ((ready1 == false) || (ready2 == false));
                if (end1 == false)
                {
                    thread1.Resume();
                }
                if (end2 == false)
                {
                    thread2.Resume();
                }
            }
        }
Пример #2
0
        //..................Basic Bubble Sort.......................
        private static void BubbleSortSimple(int[] data, FormBS form)
        {
            int temp;

            for (int j = 0; j < data.Length; j++)
            {
                for (int i = 0; i < data.Length - 1; i++)
                {
                    if (data[i] > data[i + 1])
                    {
                        temp        = data[i + 1];
                        data[i + 1] = data[i];
                        data[i]     = temp;
                    }
                    //form.ShowData();
                }
                Thread.Sleep(200);
            }
        }