2026-rff_mp/smirnovad/lab1/docs/report.md
2026-05-14 22:40:34 +03:00

2.5 KiB
Raw Blame History

Технический отчет: Сравнительный анализ структур данных

1. Вводные данные

Целью теста является оценка производительности LinkedList, HashTable и BST на массиве из 10000 элементов. Анализировались сценарии со случайным распределением и предварительной сортировкой ключей.

2. Результаты измерений (AVG)

Алгоритм Входные данные Вставка (с) Поиск (с) Удаление (с)
LinkedList случайный 0.001479 0.031327 0.020202
HashTable случайный 0.003175 0.000076 0.000043
BST случайный 0.026709 0.000231 0.000123
LinkedList сортированный 0.001394 0.032335 0.018226
HashTable сортированный 0.002912 0.000072 0.000039
BST сортированный 10.026921 0.084635 0.050672

3. Визуальный анализ

Сравнение по типам операций

Сравнение

Влияние упорядоченности на производительность

Влияние порядка

4. Экспертные выводы

  • Эффект вырождения BST: На отсортированных последовательностях BST демонстрирует критический рост времени выполнения (деградация до $O(N)$). Это связано с отсутствием балансировки, превращающим дерево в линейный список.
  • Инвариантность HashTable: Хеш-таблица показывает наиболее стабильные результаты. Скорость доступа не коррелирует с порядком входных данных.
  • Линейная сложность LinkedList: Связный список предсказуемо неэффективен при поиске, так как требует итерации по всей глубине структуры.
  • Итоговая оценка: Для систем с высокой интенсивностью поиска и вставки оптимальным выбором является HashTable.