Архив рубрики "Паттерны"

Бинарное дерево Tree<T> (2009-6-14)

Вашему вниманию предлагается класс, незаменимый при работе с древовидными данными. Класс реализует все потребности при работе с бинарными деревьями: добавление, хранение, удаление, энумерацию. Пока страдает описание, но, думаю, это я исправлю в ближайшее время, хотя, для сведущих, полагаю, не составит труда разобраться что к чему.

Работа с интервалами: Interval<T> (2009-6-13)

В ряде алгоритмов имеется необходимость реализации работы с различными интервалами (числовыми, строковыми, пользовательскими, любыми IComparable<T>). Для этих целей должен прекрасно подойти следующий универсальный шаблонный класс:

Класс Class<T1, T2, …> (2009-6-10)

Как описано в топике о структуре Pair<F, S>, зачастую требуется объединять объекты различных типов во временные структуры (или классы). Случай для двух объектов рассмотрен в предыдущем топике. Теперь рассмотрим случай большего количества объектов.

Структура Pair<F, S> (2009-6-10)

В ряде случаев бывает удобно использовать небольшие структуры, не содержащие методов. Однако не всегда хочется видеть у себя в коде множество одинаковых структур, предназначенных, к примеру, лишь для возвращаемых значений каких-либо методов.