.NET 4.x Уникальны ли все элементы последовательности - C#
Формулировка задачи:
Интересует элегантный способ проверки, нету ли повторяющихся элементов в последовательности.
Является ли данный метод корректным?
static bool Unique<T>(this IEnumerable<T> sequence)
{
if (sequence.Skip(1).Contains(sequence.First()))
return false;
else return sequence.Count() == 2 ? true : sequence.Skip(1).Unique();
}Решение задачи: «.NET 4.x Уникальны ли все элементы последовательности»
textual
Листинг программы
public static bool IsUnique<T>(this IEnumerable<T> list)
{
var hs = new HashSet<T>();
return list.All(hs.Add);
}