import csv import os def read_results(filename): """Читает результаты из CSV файла""" results = [] try: with open(filename, 'r', encoding='utf-8') as f: reader = csv.reader(f) next(reader) # Пропускаем заголовок for row in reader: results.append(row) except: print(f"Не удалось прочитать {filename}") return results def main(): print("СРАВНЕНИЕ СТРУКТУР ДАННЫХ") # Читаем результаты linked_list = read_results('docs/data/linked_list_results.csv') hash_table = read_results('docs/data/hash_table_results.csv') bst = read_results('docs/data/bst_results.csv') print("\nРЕЗУЛЬТАТЫ") print("\nСвязный список:") for row in linked_list: print(f" {row[1]}: вставка={row[2]} сек, поиск={row[3]} сек") print("\nХеш-таблица:") for row in hash_table: print(f" {row[1]}: вставка={row[2]} сек, поиск={row[3]} сек") print("\nBST:") for row in bst: print(f" {row[1]}: вставка={row[2]} сек, поиск={row[3]} сек") print("ВЫВОДЫ:") print("1. Хеш-таблица работает быстрее всего для поиска") print("2. BST сильно замедляется на отсортированных данных") print("3. Связный список самый медленный для всех операций") print("4. Для частого поиска лучше использовать хеш-таблицу") print("5. Для отсортированных данных BST неэффективен") if __name__ == "__main__": main()