diff --git a/YanyaevAA/docs/data/graphics.png b/YanyaevAA/docs/data/graphics.png index a82891b..61ec71c 100644 Binary files a/YanyaevAA/docs/data/graphics.png and b/YanyaevAA/docs/data/graphics.png differ diff --git a/YanyaevAA/docs/data/results.csv b/YanyaevAA/docs/data/results.csv index be79c02..a6d7226 100644 --- a/YanyaevAA/docs/data/results.csv +++ b/YanyaevAA/docs/data/results.csv @@ -1,91 +1,91 @@ Структура,Режим,Операция,Время (сек) -LinkedList,Случайный,Вставка,1.3571506999942358 -LinkedList,Отсортированный,Вставка,1.3104410000014468 -LinkedList,Случайный,Вставка,1.370557700000063 -LinkedList,Отсортированный,Вставка,1.3163567000010516 -LinkedList,Случайный,Вставка,1.3726127999980235 -LinkedList,Отсортированный,Вставка,1.3090860000011162 -LinkedList,Случайный,Вставка,1.4184881000037421 -LinkedList,Отсортированный,Вставка,1.3065769000022556 -LinkedList,Случайный,Вставка,1.4324161999975331 -LinkedList,Отсортированный,Вставка,1.302870300001814 -HashTable,Случайный,Вставка,0.005242100000032224 -HashTable,Отсортированный,Вставка,0.004384200001368299 -HashTable,Случайный,Вставка,0.004452300003322307 -HashTable,Отсортированный,Вставка,0.004285000002710149 -HashTable,Случайный,Вставка,0.0043441999951028265 -HashTable,Отсортированный,Вставка,0.004188300001260359 -HashTable,Случайный,Вставка,0.031318500004999805 -HashTable,Отсортированный,Вставка,0.004467499995371327 -HashTable,Случайный,Вставка,0.004497000001720153 -HashTable,Отсортированный,Вставка,0.00432149999687681 -BinarySearchTree,Случайный,Вставка,0.016076799998700153 -BinarySearchTree,Отсортированный,Вставка,6.949058300000615 -BinarySearchTree,Случайный,Вставка,0.015741900002467446 -BinarySearchTree,Отсортированный,Вставка,7.462577500002226 -BinarySearchTree,Случайный,Вставка,0.0162205999949947 -BinarySearchTree,Отсортированный,Вставка,7.46889309999824 -BinarySearchTree,Случайный,Вставка,0.016196600001421757 -BinarySearchTree,Отсортированный,Вставка,7.423307500001101 -BinarySearchTree,Случайный,Вставка,0.015813499994692393 -BinarySearchTree,Отсортированный,Вставка,7.387505999999121 -LinkedList,Случайный,Поиск,0.016872100000909995 -LinkedList,Отсортированный,Поиск,0.016344399999070447 -LinkedList,Случайный,Поиск,0.017215699997905176 -LinkedList,Отсортированный,Поиск,0.016057599998021033 -LinkedList,Случайный,Поиск,0.017128699997556396 -LinkedList,Отсортированный,Поиск,0.016144599998369813 -LinkedList,Случайный,Поиск,0.01743249999708496 -LinkedList,Отсортированный,Поиск,0.016194900003029034 -LinkedList,Случайный,Поиск,0.017249500000616536 -LinkedList,Отсортированный,Поиск,0.01595439999800874 -HashTable,Случайный,Поиск,0.00018319999799132347 -HashTable,Отсортированный,Поиск,0.0001588000013725832 -HashTable,Случайный,Поиск,3.9999998989515007e-05 -HashTable,Отсортированный,Поиск,3.5400000342633575e-05 -HashTable,Случайный,Поиск,3.580000338843092e-05 -HashTable,Отсортированный,Поиск,3.4199998481199145e-05 -HashTable,Случайный,Поиск,3.5099998058285564e-05 -HashTable,Отсортированный,Поиск,3.4199998481199145e-05 -HashTable,Случайный,Поиск,3.5099998058285564e-05 -HashTable,Отсортированный,Поиск,3.409999771974981e-05 -BinarySearchTree,Случайный,Поиск,0.00023979999969014898 -BinarySearchTree,Отсортированный,Поиск,0.06078229999548057 -BinarySearchTree,Случайный,Поиск,0.0002549999990151264 -BinarySearchTree,Отсортированный,Поиск,0.05937499999708962 -BinarySearchTree,Случайный,Поиск,0.0005522999999811873 -BinarySearchTree,Отсортированный,Поиск,0.057940200000302866 -BinarySearchTree,Случайный,Поиск,0.00025070000265259296 -BinarySearchTree,Отсортированный,Поиск,0.060181100001500454 -BinarySearchTree,Случайный,Поиск,0.0002657000004546717 -BinarySearchTree,Отсортированный,Поиск,0.05845009999757167 -LinkedList,Случайный,Удаление,0.010934500001894776 -LinkedList,Отсортированный,Удаление,0.011079000003519468 -LinkedList,Случайный,Удаление,0.021408699998573866 -LinkedList,Отсортированный,Удаление,0.01955590000579832 -LinkedList,Случайный,Удаление,0.020861200006038416 -LinkedList,Отсортированный,Удаление,0.020471800002269447 -LinkedList,Случайный,Удаление,0.02055800000380259 -LinkedList,Отсортированный,Удаление,0.01997020000271732 -LinkedList,Случайный,Удаление,0.021316799997293856 -LinkedList,Отсортированный,Удаление,0.02057559999957448 -HashTable,Случайный,Удаление,9.029999637277797e-05 -HashTable,Отсортированный,Удаление,8.179999713320285e-05 -HashTable,Случайный,Удаление,6.199999916134402e-05 -HashTable,Отсортированный,Удаление,5.950000195298344e-05 -HashTable,Случайный,Удаление,2.6599998818710446e-05 -HashTable,Отсортированный,Удаление,2.6399997295811772e-05 -HashTable,Случайный,Удаление,2.6500005333218724e-05 -HashTable,Отсортированный,Удаление,2.630000381032005e-05 -HashTable,Случайный,Удаление,2.630000381032005e-05 -HashTable,Отсортированный,Удаление,2.6200003048870713e-05 -BinarySearchTree,Случайный,Удаление,0.00017410000145900995 -BinarySearchTree,Отсортированный,Удаление,0.03420480000204407 -BinarySearchTree,Случайный,Удаление,0.00016069999401224777 -BinarySearchTree,Отсортированный,Удаление,0.03399109999736538 -BinarySearchTree,Случайный,Удаление,0.00016940000205067918 -BinarySearchTree,Отсортированный,Удаление,0.03377170000021579 -BinarySearchTree,Случайный,Удаление,0.00018689999706111848 -BinarySearchTree,Отсортированный,Удаление,0.033754900003259536 -BinarySearchTree,Случайный,Удаление,0.0001664000010350719 -BinarySearchTree,Отсортированный,Удаление,0.03359389999968698 +LinkedList,Случайный,Вставка,1.4751020000003336 +LinkedList,Отсортированный,Вставка,1.409119699999792 +LinkedList,Случайный,Поиск,0.017900500000905595 +LinkedList,Отсортированный,Поиск,0.01725550000082876 +LinkedList,Случайный,Удаление,0.013612400000056368 +LinkedList,Отсортированный,Удаление,0.011873999999806983 +LinkedList,Случайный,Вставка,1.501550999999381 +LinkedList,Отсортированный,Вставка,1.414307999999437 +LinkedList,Случайный,Поиск,0.017685799999526353 +LinkedList,Отсортированный,Поиск,0.017450199999075267 +LinkedList,Случайный,Удаление,0.02419449999979406 +LinkedList,Отсортированный,Удаление,0.022431700001106947 +LinkedList,Случайный,Вставка,1.492261999999755 +LinkedList,Отсортированный,Вставка,1.4051560999996582 +LinkedList,Случайный,Поиск,0.017782200000510784 +LinkedList,Отсортированный,Поиск,0.01736950000122306 +LinkedList,Случайный,Удаление,0.02435729999888281 +LinkedList,Отсортированный,Удаление,0.02374480000071344 +LinkedList,Случайный,Вставка,1.5062662000000273 +LinkedList,Отсортированный,Вставка,1.4150953000007576 +LinkedList,Случайный,Поиск,0.017549800000779214 +LinkedList,Отсортированный,Поиск,0.01746169999933045 +LinkedList,Случайный,Удаление,0.024229800001194235 +LinkedList,Отсортированный,Удаление,0.02227369999855 +LinkedList,Случайный,Вставка,1.5289076999997633 +LinkedList,Отсортированный,Вставка,1.411172299998725 +LinkedList,Случайный,Поиск,0.017436600001019542 +LinkedList,Отсортированный,Поиск,0.01663180000105058 +LinkedList,Случайный,Удаление,0.023982900000191876 +LinkedList,Отсортированный,Удаление,0.022638300000835443 +HashTable,Случайный,Вставка,0.004706399999122368 +HashTable,Отсортированный,Вставка,0.004241700000420678 +HashTable,Случайный,Поиск,4.660000013245735e-05 +HashTable,Отсортированный,Поиск,4.2300000131945126e-05 +HashTable,Случайный,Удаление,2.8800001018680632e-05 +HashTable,Отсортированный,Удаление,2.4300001314259134e-05 +HashTable,Случайный,Вставка,0.004257600001437822 +HashTable,Отсортированный,Вставка,0.0041388999998162035 +HashTable,Случайный,Поиск,4.329999865149148e-05 +HashTable,Отсортированный,Поиск,4.219999937049579e-05 +HashTable,Случайный,Удаление,3.5000000934815034e-05 +HashTable,Отсортированный,Удаление,3.199999991920777e-05 +HashTable,Случайный,Вставка,0.004153400001086993 +HashTable,Отсортированный,Вставка,0.00404770000022836 +HashTable,Случайный,Поиск,4.3000000005122274e-05 +HashTable,Отсортированный,Поиск,4.160000025876798e-05 +HashTable,Случайный,Удаление,3.470000046945643e-05 +HashTable,Отсортированный,Удаление,3.169999945384916e-05 +HashTable,Случайный,Вставка,0.03171919999840611 +HashTable,Отсортированный,Вставка,0.0047309999990829965 +HashTable,Случайный,Поиск,0.00016730000061215833 +HashTable,Отсортированный,Поиск,0.00016680000044289045 +HashTable,Случайный,Удаление,0.00010769999971671496 +HashTable,Отсортированный,Удаление,9.990000035031699e-05 +HashTable,Случайный,Вставка,0.0044019999986630864 +HashTable,Отсортированный,Вставка,0.004194899998765322 +HashTable,Случайный,Поиск,0.00012280000009923242 +HashTable,Отсортированный,Поиск,0.00011839999933727086 +HashTable,Случайный,Удаление,8.170000000973232e-05 +HashTable,Отсортированный,Удаление,8.010000055946875e-05 +BinarySearchTree,Случайный,Вставка,0.016431300000476767 +BinarySearchTree,Отсортированный,Вставка,7.383592899999712 +BinarySearchTree,Случайный,Поиск,0.00029010000071139075 +BinarySearchTree,Отсортированный,Поиск,0.058574799999405514 +BinarySearchTree,Случайный,Удаление,0.00019500000053085387 +BinarySearchTree,Отсортированный,Удаление,0.035139699999490404 +BinarySearchTree,Случайный,Вставка,0.01684449999993376 +BinarySearchTree,Отсортированный,Вставка,7.405079000000114 +BinarySearchTree,Случайный,Поиск,0.0002845999988494441 +BinarySearchTree,Отсортированный,Поиск,0.056575599999632686 +BinarySearchTree,Случайный,Удаление,0.000167199999850709 +BinarySearchTree,Отсортированный,Удаление,0.03582719999940309 +BinarySearchTree,Случайный,Вставка,0.01675249999971129 +BinarySearchTree,Отсортированный,Вставка,7.355735600000116 +BinarySearchTree,Случайный,Поиск,0.00025770000138436444 +BinarySearchTree,Отсортированный,Поиск,0.05426189999889175 +BinarySearchTree,Случайный,Удаление,0.00015389999862236436 +BinarySearchTree,Отсортированный,Удаление,0.03391879999981029 +BinarySearchTree,Случайный,Вставка,0.016885099999853992 +BinarySearchTree,Отсортированный,Вставка,7.338030799999615 +BinarySearchTree,Случайный,Поиск,0.0002921999985119328 +BinarySearchTree,Отсортированный,Поиск,0.0575857999992877 +BinarySearchTree,Случайный,Удаление,0.0001720000000204891 +BinarySearchTree,Отсортированный,Удаление,0.03530189999946742 +BinarySearchTree,Случайный,Вставка,0.017169299999295617 +BinarySearchTree,Отсортированный,Вставка,7.8378021999997145 +BinarySearchTree,Случайный,Поиск,0.00032219999957305845 +BinarySearchTree,Отсортированный,Поиск,0.06426450000071782 +BinarySearchTree,Случайный,Удаление,0.00019729999985429458 +BinarySearchTree,Отсортированный,Удаление,0.04044439999961469 diff --git a/YanyaevAA/task1/[1].py b/YanyaevAA/task1/[1].py index 6dd9bf4..545014d 100644 --- a/YanyaevAA/task1/[1].py +++ b/YanyaevAA/task1/[1].py @@ -155,25 +155,6 @@ def task_A(structure_name, data): end = time.perf_counter() elapsed = end - start return elapsed, container -results=[["Структура", "Режим", "Операция", "Время (сек)"]] -structures_name=["LinkedList", "HashTable", "BinarySearchTree"] -experiment_name=["Вставка", "Поиск", "Удаление"] -mode_of_data=["Случайный", "Отсортированный"] - -records_sorted, records_shuffled = generate() -container_shuffled=[] -container_sorted=[] -for i in range(3): - container_shuffled.append(task_A(structures_name[i], records_shuffled)[1]) - container_sorted.append(task_A(structures_name[i], records_sorted)[1]) - for j in range(5): - - result_shuffled = task_A(structures_name[i], records_shuffled)[0] - results.append([structures_name[i], mode_of_data[0], experiment_name[0], result_shuffled]) - - result_sorted= task_A(structures_name[i], records_sorted)[0] - results.append([structures_name[i], mode_of_data[1], experiment_name[0], result_sorted]) - print(f"{structures_name[i]}: Время вставки всех записей {mode_of_data[0]}: {result_shuffled} {mode_of_data[1]}: {result_sorted}") #Б. Поиск 100 случайных записей def task_B(structure_name,container, data): @@ -191,22 +172,6 @@ def task_B(structure_name,container, data): elapsed = end - start return elapsed -names=[record[0] for record in records_shuffled] -random_names=random.sample(names, 100) -missing_names=[f"None_{i}" for i in range(10)] -names_for_test=random_names+missing_names - -print("Результаты задания Б") -for i in range(3): - for j in range(5): - result_shuffled = task_B(structures_name[i], container_shuffled[i], names_for_test) - results.append([structures_name[i], mode_of_data[0], experiment_name[1], result_shuffled]) - - result_sorted=task_B(structures_name[i], container_sorted[i], names_for_test) - results.append([structures_name[i], mode_of_data[1], experiment_name[1], result_sorted]) - print(f"{structures_name[i]}: Время выполнения для 110 записей для {mode_of_data[0]}: {result_shuffled} {mode_of_data[1]}: {result_sorted} ") - - #В. Удаление 50 случайных чисел def task_C(structure_name,container, data): start=time.perf_counter() @@ -222,20 +187,50 @@ def task_C(structure_name,container, data): end=time.perf_counter() elapsed = end - start return elapsed +conatiner_type=[None, [None]*1000, None] +results=[["Структура", "Режим", "Операция", "Время (сек)"]] +structures_name=["LinkedList", "HashTable", "BinarySearchTree"] +experiment_name=["Вставка", "Поиск", "Удаление"] +mode_of_data=["Случайный", "Отсортированный"] +records_sorted, records_shuffled = generate() +container_shuffled=[] +container_sorted=[] +names=[record[0] for record in records_shuffled] +random_names=random.sample(names, 100) +missing_names=[f"None_{i}" for i in range(10)] +names_for_test=random_names+missing_names names_to_delete=random.sample(names,50) -print("Результаты задания В") for i in range(3): + container_shuffled.append(task_A(structures_name[i], records_shuffled)[1]) + container_sorted.append(task_A(structures_name[i], records_sorted)[1]) for j in range(5): - shuffled=container_shuffled[i] - sorted=container_sorted[i] - result_shuffled=task_C(structures_name[i], shuffled, names_to_delete) + # Реализация задания А + result_shuffled = task_A(structures_name[i], records_shuffled)[0] + results.append([structures_name[i], mode_of_data[0], experiment_name[0], result_shuffled]) + + result_sorted= task_A(structures_name[i], records_sorted)[0] + results.append([structures_name[i], mode_of_data[1], experiment_name[0], result_sorted]) + print(f"{structures_name[i]}: Время вставки всех записей {mode_of_data[0]}: {result_shuffled} {mode_of_data[1]}: {result_sorted}") + # Реализация задания Б + result_shuffled = task_B(structures_name[i], container_shuffled[i], names_for_test) + results.append([structures_name[i], mode_of_data[0], experiment_name[1], result_shuffled]) + + result_sorted = task_B(structures_name[i], container_sorted[i], names_for_test) + results.append([structures_name[i], mode_of_data[1], experiment_name[1], result_sorted]) + print( + f"{structures_name[i]}: Время выполнения для 110 записей для {mode_of_data[0]}: {result_shuffled} {mode_of_data[1]}: {result_sorted} ") + #Реализация задания В + shuffled = container_shuffled[i] + sorted = container_sorted[i] + result_shuffled = task_C(structures_name[i], shuffled, names_to_delete) results.append([structures_name[i], mode_of_data[0], experiment_name[2], result_shuffled]) result_sorted = task_C(structures_name[i], sorted, names_to_delete) results.append([structures_name[i], mode_of_data[1], experiment_name[2], result_sorted]) - print(f"{structures_name[i]}: Время удаления 50 записей для {mode_of_data[0]}: {result_shuffled} {mode_of_data[1]}: {result_sorted}") + print( + f"{structures_name[i]}: Время удаления 50 записей для {mode_of_data[0]}: {result_shuffled} {mode_of_data[1]}: {result_sorted}") #4. Сохранение результатов csv_file=r"C:\Users\Андрей\Desktop\2026-rff_mp\YanyaevAA\docs\data\results.csv"