zoukankan      html  css  js  c++  java
  • [引]用c#产生1100之间的不重复的随机数,并且可进行降序 升序排序

    本文转自:http://hi.baidu.com/chenyaom/item/a1b53994a54e2e4af14215ea

     class Program
        {
            static void Main(string[] args)
            {
                int[] Arr = new int[100];
                Random random = new Random();
                for (int i = 0; i < Arr.Length; i++)
                {
                   Arr[i] = GetRandomNum(Arr, random);
                }
                for (int i = 0; i < 1000; i++)
                {
                    //Console.WriteLine(random.Next(101));//这种会产生0-100之间的数,返回一个小于指定数的非负随机数
                    //Console.WriteLine(random.Next(1,101));//这种会产生1-100之间的数 
                }
                sortArr(Arr, false);
                foreach (var item in Arr)
                {
                    Console.WriteLine(item);
                }

            }

            private static int GetRandomNum(int[] Arr, Random random)
            {
                int tempValue = random.Next(1, 101);
                if (Arr.Contains(tempValue))
                {
                    tempValue = GetRandomNum(Arr, random);
                }
                return tempValue;
            }

            private static int GetRandomNum2(int[] Arr, Random random)
            {
                int tempValue = random.Next(1, 100);
                while (!Arr.Contains(tempValue))
                {
                    tempValue = random.Next(1, 100);
                }
                return tempValue;
            }

            static void sortArr(int[] Arr, bool orderby)
            {
                for (int i = 0; i < Arr.Length; i++)
                {
                    for (int j = i + 1; j < Arr.Length; j++)
                    {
                        if (orderby)
                        {
                            if (Arr[i] > Arr[j])
                            {
                                Arr[i] = Arr[j] + (Arr[j] = Arr[i]) * 0;
                            }
                        }
                        else
                        {
                            if (Arr[i] < Arr[j])
                            {
                                Arr[i] = Arr[j] + (Arr[j] = Arr[i]) * 0;
                            }
                        }
                    }
                }
            }
        }

  • 相关阅读:
    在excel实现多级联动
    发送邮件使用html模板的实现的大致思路
    设计模式的定义和分类
    yb课堂之用户登陆校验拦截器开发 《十一》
    CTF中常用的php伪协议利用
    Docker
    从零开始的Wordpress个人博客搭建
    .htaccess文件配置理解
    disable_function绕过--利用LD_PRELOAD
    信息安全实习生面试小结
  • 原文地址:https://www.cnblogs.com/freeliver54/p/3013832.html
Copyright © 2011-2022 走看看