К демонстрации
Алгоритмы / F#
Функциональное программирование · ИТМО

От входных данных до понятного результата.

Посмотрите, как дерево сохраняет баланс, полином проходит через точки, а автомат меняет состояние. Каждое действие вычисляется исходными модулями на F#.

Загрузка F#…

Дерево после вставки

Результат появится после загрузки вычислительного ядра.

Подготовка F#…
Число узлов—
Высота—

Почему это полезно

Сбалансированное дерево поддерживает упорядоченный набор данных. Вставка и удаление сохраняют порядок, а повороты ограничивают высоту дерева.

Разобрать реализацию →

Структуры данных

Неизменяемое дерево и сопоставление с образцом позволяют описать изменения через небольшие функции. Тесты проверяют порядок и баланс после каждой вставки и удаления.

Численные методы

Полином Лагранжа восстанавливает значения между известными точками. Пример Рунге показывает, почему нужно проверять поведение на всём интервале, а не только в узлах.

Моделирование поведения

Конечные автоматы описывают состояния, условия и действия. Такой подход применим к процессам, протоколам и интерфейсам с последовательными переходами.