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()