Фильтрация последовательности с пропуском последних N элементов (одно-проходный алгоритм)
Условие задачи
Реализовать функцию FilterLast, которая возвращает все элементы исходной последовательности, за исключением последних N элементов. Исходную последовательность нельзя перечислять более одного раза и нельзя хранить целиком в памяти. Обратите внимание, что длина входящей последовательности заранее неизвестна (то есть, вызов source.Count() приводит к перечислению всех элементов). Требования: - Реализовать поточный одно-проходный алгоритм - Значение N существенно меньше длины последовательности - Допускается использовать дополнительную память для хранения небольшого числа элементов
csharpIEnumerable<T> FilterLast<T>(IEnumerable<T> source, Int32 n)