Cシャープ(#)で配列の極値を取得するための3つの一般的な方法

説明を簡単にするために、ここでは1次元配列を
使用しSystemます。方法1:名前名のみを使用します。コマンド:using System;

using System;

namespace debug
{
    
    
    class Program
    {
    
    
        static void Main(string[] args)
        {
    
    
            double[] array = new double[] {
    
     0, 1, 2, 1, 7, 5, 4 };
            // 先对array进行排序处理,注意 Array.Sort()函数处理后原函数本身顺序发生变化
            // 默认按从小到大顺序排列
            Array.Sort(array);
            // 最小值就是第一个数据
            Console.WriteLine($"The minimum value of array is {array[0]}");
            // 最大值就是最后一个数据,注意索引从0开始,最后一个数据索引为array的长度减1
            Console.WriteLine($"The minimum value of array is {array[array.Length - 1]}");
        }
    }
}
//The minimum value of array is 0
// The minimum value of array is 7

もちろん、この方法を使用すると、最小値だけでなく、2番目に小さい値も取得できます。インデックス値を変更するだけです。

方法2:独自のカスタム並べ替え機能を使用する

using System;

namespace debug
{
    
    
    class Program
    {
    
    
        static void Main(string[] args)
        {
    
    
            double[] array = new double[] {
    
     0, 1, 2, 1, 7, 5, 4 };
            // 直接调用我们需要的数组获取值
            double minimum = Min(array);
            double maximum = Max(array);
            // 屏幕打印
            Console.WriteLine($"The minimum value of array is {minimum}");
            Console.WriteLine($"The minimum value of array is {maximum}");
        }

        // 定义自己的排序函数,但是要注意类型应该与我们需要使用的数组保持一致
        public static double Max(double[] array)
        {
    
    
            double max = 0;
            foreach (double element in array)
            {
    
    
                if (element > max)
                {
    
    
                    max = element;
                }
            }
            return max;
        }

        public static double Min(double[] array)
        {
    
    
            double min = 100;
            foreach (double element in array)
            {
    
    
                if (element < min)
                {
    
    
                    min = element;
                }
            }
            return min;
        }
    }
}
//The minimum value of array is 0
// The minimum value of array is 7

もちろん、この方法は、調査する配列のタイプに応じて対応するタイプMaxMin関数定義する必要があるため、それほど単純ではありませんが、ジェネリックを使用してこの問題を均一に解決することもできるため、ここではあまり説明しません。 、後で追加される場合があります。

方法3:System.Linq名前を使用する、コマンド:using System.Linq;

using System;
using System.Linq;

namespace debug
{
    
    
    class Program
    {
    
    
        static void Main(string[] args)
        {
    
    
            double[] array = new double[] {
    
     0, 1, 2, 1, 7, 5, 4 };
            // 直接调用我们需要的数组获取值
            double minimum = array.Min();
            double maximum = array.Max();
            // 屏幕打印
            Console.WriteLine($"The minimum value of array is {minimum}");
            Console.WriteLine($"The minimum value of array is {maximum}");
        }
    }
}
//The minimum value of array is 0
// The minimum value of array is 7

もちろんC#、プログラミングで極値を取得する方法は他にもあります。極値を取得するための、さらに3つの一般的な方法を次に示します。

役に立ったら手を挙げていいねをあげて、もっと多くの人にオススメさせてください〜

おすすめ

転載: blog.csdn.net/u011699626/article/details/110879895
おすすめ