zoukankan      html  css  js  c++  java
  • 生成不重复的随机数数组,算法优化

            private void Form1_Load(object sender, EventArgs e)
            {
                string result = "";
                System.Diagnostics.Stopwatch watch = new System.Diagnostics.Stopwatch();

                watch.Start();
                List<int> list = new List<int>();
                Random random = new Random();
                while (list.Count < 100)
                {
                    int t = random.Next(0100);
                    if (!list.Contains(t))
                    {
                        list.Add(t);
                    }
                }
                watch.Stop();

                result += "A:" + watch.ElapsedTicks.ToString();

                watch.Restart();

                int[] arr = new int[100];
                int[] buf = new int[100];

                for (int i = 0; i < 100; i++)
                {
                    buf[i] = i;
                }

                Random ran = new Random();
                int bufLength = buf.Length;
                for (int i = 0; i < 100; i++)
                {
                    int t = ran.Next(0, bufLength);
                    arr[i] = buf[t];
                    buf[t] = buf[bufLength - 1];
                    bufLength--;
                }
                watch.Stop();

                result += "  B:" + watch.ElapsedTicks.ToString();

                MessageBox.Show(result);
                this.Close();
            }
     
     
     
     
     
  • 相关阅读:
    算法基础~链表~求两个链表的交点(不考虑时间、空间复杂度)
    《人月神话》阅读笔记一
    html与css学习笔记
    新手教程
    课程信息管理
    关于文件动手动脑
    四则运算随机生成
    关于异常
    第四次动手动脑
    第三次动手动脑
  • 原文地址:https://www.cnblogs.com/bloodofhero/p/2675583.html
Copyright © 2011-2022 走看看