Создать метод на C# для выбора сочетаний элементов массива
Формулировка задачи:
Пожалуйста, помогите создать на си-шарп метод, который принимает в качестве параметров одномерный массив и некое число k и возвращает двумерный массив, строки которого представляют собой сочетания элементов одномерного массива по k.
Решение задачи: «Создать метод на C# для выбора сочетаний элементов массива»
textual
Листинг программы
using System; using System.Collections.Generic; using System.Linq; namespace ConsoleApplication1 { static class Program { public static IEnumerable<IEnumerable<T>> Combinations<T>(this IEnumerable<T> elements, int k) { return k == 0 ? new[] { new T[0] } : elements.SelectMany((e, i) => elements.Skip(i + 1).Combinations(k - 1).Select(c => (new[] { e }).Concat(c))); } static void Main(string[] args) { var result = Combinations(new[] { 1, 2, 3, 4, 5 }, 3); foreach(var line in result) { Console.WriteLine(String.Join(", ", line)); } } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д