diff --git a/lukovnikovde/docs/data/DataStructure.py b/lukovnikovde/docs/data/DataStructure.py index 0214abe..72dddca 100644 --- a/lukovnikovde/docs/data/DataStructure.py +++ b/lukovnikovde/docs/data/DataStructure.py @@ -1,5 +1,6 @@ import random as rnd import time +import csv ############################################################################################# def sort_list(name_list): @@ -18,6 +19,11 @@ def create_name_phone(i): name = f"User_{i:03d}" phone = f"{rnd.randint(100, 999)}-{rnd.randint(100, 999)}" return (name, phone) + +def file_insert(results): + with open("results.csv", "w", encoding = "utf-8-sig", newline = "") as file: + writer = csv.writer(file) + writer.writerows(results) ########################################################################################################################### def ll_insert(head, name, phone): @@ -413,7 +419,44 @@ def main(): print(Time_bst_sorted[i]) print(f"Average: {Time_average_bst_sorted}\n\n") print("=============================================== END TESTING ================================================") + + results = [["Структура", "Режим", "Операция", "Время(мс)"]] + for i in range(replay): + results.append(["LinkedList", "Случайный", "вставка", Time_ll_not_sorted[i]["insert"]]) + results.append(["LinkedList", "Случайный", "поиск", Time_ll_not_sorted[i]["find"]]) + results.append(["LinkedList", "Случайный", "удаление", Time_ll_not_sorted[i]["delete"]]) + results.append(["LinkedList", "Случайный", "формирование списка", Time_ll_not_sorted[i]["list"]]) + + results.append(["LinkedList", "Упорядоченный", "вставка", Time_ll_sorted[i]["insert"]]) + results.append(["LinkedList", "Упорядоченный", "поиск", Time_ll_sorted[i]["find"]]) + results.append(["LinkedList", "Упорядоченный", "удаление", Time_ll_sorted[i]["delete"]]) + results.append(["LinkedList", "Упорядоченный", "формирование списка", Time_ll_sorted[i]["list"]]) + + for i in range(replay): + results.append(["HashTable", "Случайный", "вставка", Time_ht_not_sorted[i]["insert"]]) + results.append(["HashTable", "Случайный", "поиск", Time_ht_not_sorted[i]["find"]]) + results.append(["HashTable", "Случайный", "удаление", Time_ht_not_sorted[i]["delete"]]) + results.append(["HashTable", "Случайный", "формирование списка", Time_ht_not_sorted[i]["list"]]) + + results.append(["HashTable", "Упорядоченный", "вставка", Time_ht_sorted[i]["insert"]]) + results.append(["HashTable", "Упорядоченный", "поиск", Time_ht_sorted[i]["find"]]) + results.append(["HashTable", "Упорядоченный", "удаление", Time_ht_sorted[i]["delete"]]) + results.append(["HashTable", "Упорядоченный", "формирование списка", Time_ht_sorted[i]["list"]]) + for i in range(replay): + results.append(["BinarySearchTree", "Случайный", "вставка", Time_bst_not_sorted[i]["insert"]]) + results.append(["BinarySearchTree", "Случайный", "поиск", Time_bst_not_sorted[i]["find"]]) + results.append(["BinarySearchTree", "Случайный", "удаление", Time_bst_not_sorted[i]["delete"]]) + results.append(["BinarySearchTree", "Случайный", "формирование списка", Time_bst_not_sorted[i]["list"]]) + + results.append(["BinarySearchTree", "Упорядоченный", "вставка", Time_bst_sorted[i]["insert"]]) + results.append(["BinarySearchTree", "Упорядоченный", "поиск", Time_bst_sorted[i]["find"]]) + results.append(["BinarySearchTree", "Упорядоченный", "удаление", Time_bst_sorted[i]["delete"]]) + results.append(["BinarySearchTree", "Упорядоченный", "формирование списка", Time_bst_sorted[i]["list"]]) + + for i in range(1, len(results) - 1): + results[i][3] *= 1000 + file_insert(results) if __name__ == "__main__": main()