Как найти первые 5 максимальных элементов в List? - C#
Формулировка задачи:
Здравствуйте, у меня есть List<Dish>. Dish - это класс(Блюдо). Есть также список приготовленных блюд - List<Dish> cookedDishes.
Мне нужно найти 5 максимальных элементов этого списка, выбирать надо по свойству Num(номер) типа int. Потом найденные 5 результатов надо вывести в MessageBox. Как это реализовать? Читал что можно через LINQ. но никак не получается
private void button5_Click(object sender, EventArgs e) {
var mostFollowedQuestions = cookedDishes
.GroupBy(q => q.Num)
.OrderByDescending(gp => gp.Count())
.Take(5).Single();
MessageBox.Show(mostFollowedQuestions.ToString());
}Решение задачи: «Как найти первые 5 максимальных элементов в List?»
textual
Листинг программы
var maxes = cookedDishes.OrderByDescending(x=>x.Num).Take(5);
MessageBox.Show(string.Join("\n", maxes));