为了简化论述,这里我们使用一维数组
方法一:仅使用System
命名空间。命令: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
当然,使用这种方法,我们不仅可以获取到最小值,第二小的值也手到擒来,只要更换索引值即可。
方法二:使用自己自定义的排序函数
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
当然了,这种方法不是很简便,因为我们需要根据想要研究的数组类型进行我们相应类型的Max
与Min
函数的定义,但是我们也可以使用泛型来统一解决这一问题,这里不做过多讨论,后面也许会补充说明。
方法三:使用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#
编程中,还存在其他获取极值的方法,这里只是给出比较常见的三种获取极值的方法用以抛砖引玉。
如果大家觉得有用,请高抬贵手给一个赞让我上推荐让更多的人看到吧~