删除C#中列表中的最小值(需要帮助)

删除C#中列表中的最小值(需要帮助),c#,list,C#,List,我试图删除列表的最小值,main()函数调用removeMallest()函数并写入返回列表,但得到的结果是: “System.Collection.Generic.List`1[System.Int32]” 各种解释: “n”-->统计foreach lopp运行的频率,以便通过将早期值保存在, “posa”-->将早期值的位置保存到右侧的列表中, “a”-->保存上一个数字以与下一个数字进行比较 清单: “数字”-->是输入, “列表”-->输出 您可以找到我的代码或[此处][2] 谢谢你的

我试图删除列表的最小值,main()函数调用removeMallest()函数并写入返回列表,但得到的结果是:

“System.Collection.Generic.List`1[System.Int32]”

各种解释: “n”-->统计foreach lopp运行的频率,以便通过将早期值保存在, “posa”-->将早期值的位置保存到右侧的列表中, “a”-->保存上一个数字以与下一个数字进行比较

清单: “数字”-->是输入, “列表”-->输出

您可以找到我的代码或[此处][2]

谢谢你的帮助

[2] :
ideone.com

好吧,只要
Remove()
a
Min()

列表编号=新列表(){
请注意,-2出现了两次
};
//就这么做吧
numbers.Remove(numbers.Min());
//让我们把测试打印出来:
// 5, 3, 9, 5, 4
Write(String.Join(“,”,number));
好吧,只要
删除()
a
Min()

列表编号=新列表(){
请注意,-2出现了两次
};
//就这么做吧
numbers.Remove(numbers.Min());
//让我们把测试打印出来:
// 5, 3, 9, 5, 4
Write(String.Join(“,”,number));

LINQ在这里派上用场,您可以使用以下想法:

var numbers = new []{22,31,14,25,26,67,8,49,101};
var numbersNoLowest = numbers.OrderByDescending(x => x).Take(numbers.Count() - 1).ToList();
foreach(var number in numbersNoLowest)
{
    Console.WriteLine(number);    
}

在这里运行:

LINQ可以在这里派上用场,您可以使用以下想法:

var numbers = new []{22,31,14,25,26,67,8,49,101};
var numbersNoLowest = numbers.OrderByDescending(x => x).Take(numbers.Count() - 1).ToList();
foreach(var number in numbersNoLowest)
{
    Console.WriteLine(number);    
}

在此处运行:

我不确定您的代码试图做什么,但它不会删除最小值。如果要删除所有出现的最小值,并将其余值保留为原始顺序(这是代码中部分出现的情况),则以下操作应有效:

  int min = numbers.Min();
  List<int> list = numbers.Where(val => val != min).ToList();
int min=numbers.min();
列表=数字。其中(val=>val!=min)。ToList();

我不确定您的代码试图做什么,但它没有删除最小值。如果要删除所有出现的最小值,并将其余值保留为原始顺序(这是代码中部分出现的情况),则以下操作应有效:

  int min = numbers.Min();
  List<int> list = numbers.Where(val => val != min).ToList();
int min=numbers.min();
列表=数字。其中(val=>val!=min)。ToList();