在C#中,要找到列表中的最小差异,可以使用以下方法:
List<int> list = new List<int> { 5, 2, 8, 3, 1 };
list.Sort();
int minDifference = int.MaxValue;
for (int i = 1; i< list.Count; i++)
{
int difference = list[i] - list[i - 1];
if (difference < minDifference)
{
minDifference = difference;
}
}
Console.WriteLine("最小差异为:" + minDifference);
List<int> list = new List<int> { 5, 2, 8, 3, 1 };
int minDifference = list.Zip(list.Skip(1), (a, b) => b - a).Min();
Console.WriteLine("最小差异为:" + minDifference);
在这两种方法中,第一种方法更容易理解,但第二种方法更简洁。无论哪种方法,都需要对列表进行排序,因为最小差异只能出现在相邻元素之间。
T-Day
企业创新在线学堂
【产研荟】直播系列
GAME-TECH
云+社区技术沙龙[第10期]
云+社区技术沙龙[第20期]
云+社区技术沙龙[第28期]
第三期Techo TVP开发者峰会
领取专属 10元无门槛券
手把手带您无忧上云