zoukankan      html  css  js  c++  java
  • 求n个数中的最大或最小k个数

      //求n个数中的最小k个数
            public static void TestMin(int k, int n)
            {
                Random rd = new Random();
                int[] myArray = new int[n];
                int[] newArray = new int[k];

                for (int i = 0; i < n; i++)
                {
                    // randomNumber = rd.Next(10000, 10000000);
                    myArray[i] = rd.Next(1, 1000);
                    Console.WriteLine(myArray[i]);
                }
                Console.WriteLine("**********************");
                for (int i = 0; i < k; i++)
                {
                    newArray[i] = myArray[i];
                    Console.WriteLine(newArray[i]);
                }
                Console.WriteLine("**********************");
                Array.Sort(newArray);

                for (int j = k; j < n; j++)
                {
                    int max = newArray[k - 1];
                    //  Console.WriteLine("The last five" + newArray[i]);
                    if (max < myArray[j])
                    {
                        continue;
                    }
                    else
                    {
                        newArray[k - 1] = myArray[j];
                        Array.Sort(newArray);
                    }

                }

                foreach (int i in newArray)
                    Console.WriteLine(i);
            }
            //求n个数中的最大k个数
            public static void TestMax(int k, int n)
            {
                Random rd = new Random();
                int[] myArray = new int[n];
                int[] newArray = new int[k];

                for (int i = 0; i < n; i++)
                {
                    // randomNumber = rd.Next(10000, 10000000);
                    myArray[i] = rd.Next(1, 1000);
                    Console.WriteLine(myArray[i]);
                }
                Console.WriteLine("**********************");
                for (int i = 0; i < k; i++)
                {
                    newArray[i] = myArray[i];
                    Console.WriteLine(newArray[i]);
                }
                Console.WriteLine("**********************");
                Array.Sort(newArray);

                for (int j = k; j < n; j++)
                {
                    int max = newArray[0];
                    //  Console.WriteLine("The last five" + newArray[i]);
                    if (max > myArray[j])
                    {
                        continue;
                    }
                    else
                    {
                        newArray[0] = myArray[j];
                        Array.Sort(newArray);
                    }

                }

                foreach (int i in newArray)
                    Console.WriteLine(i);
            }

  • 相关阅读:
    ubuntu18.04更新源
    机器学习网址
    ubuntu18.04下安装Anaconda及numpy、matplotlib
    google云使用记录
    tensorflow省钱方案-ml-engine
    Angular 创建项目
    Angular 环境搭建
    android APP国际化一键切换实现
    android 上下滑动标题栏和状态栏改变颜色实现
    android滑动标题栏渐变实现
  • 原文地址:https://www.cnblogs.com/dasydong/p/3280963.html
Copyright © 2011-2022 走看看