forked from UNN/2026-rff_mp
Добавлено автоматическое определение пути для сохранения
This commit is contained in:
parent
033419ac3f
commit
3714c824e7
Binary file not shown.
|
Before Width: | Height: | Size: 129 KiB After Width: | Height: | Size: 130 KiB |
|
|
@ -1,91 +1,91 @@
|
||||||
Структура,Режим,Операция,Время (сек)
|
Структура,Режим,Операция,Время (сек)
|
||||||
LinkedList,Случайный,Вставка,1.4751020000003336
|
LinkedList,Случайный,Вставка,1.4511300000012852
|
||||||
LinkedList,Отсортированный,Вставка,1.409119699999792
|
LinkedList,Отсортированный,Вставка,1.3532131999963894
|
||||||
LinkedList,Случайный,Поиск,0.017900500000905595
|
LinkedList,Случайный,Поиск,0.017212500002642628
|
||||||
LinkedList,Отсортированный,Поиск,0.01725550000082876
|
LinkedList,Отсортированный,Поиск,0.01602149999962421
|
||||||
LinkedList,Случайный,Удаление,0.013612400000056368
|
LinkedList,Случайный,Удаление,0.013075299997581169
|
||||||
LinkedList,Отсортированный,Удаление,0.011873999999806983
|
LinkedList,Отсортированный,Удаление,0.011430300000938587
|
||||||
LinkedList,Случайный,Вставка,1.501550999999381
|
LinkedList,Случайный,Вставка,1.4284962000019732
|
||||||
LinkedList,Отсортированный,Вставка,1.414307999999437
|
LinkedList,Отсортированный,Вставка,1.3624571999971522
|
||||||
LinkedList,Случайный,Поиск,0.017685799999526353
|
LinkedList,Случайный,Поиск,0.01644559999840567
|
||||||
LinkedList,Отсортированный,Поиск,0.017450199999075267
|
LinkedList,Отсортированный,Поиск,0.015727300000435207
|
||||||
LinkedList,Случайный,Удаление,0.02419449999979406
|
LinkedList,Случайный,Удаление,0.02287860000069486
|
||||||
LinkedList,Отсортированный,Удаление,0.022431700001106947
|
LinkedList,Отсортированный,Удаление,0.02130629999737721
|
||||||
LinkedList,Случайный,Вставка,1.492261999999755
|
LinkedList,Случайный,Вставка,1.4398433999958797
|
||||||
LinkedList,Отсортированный,Вставка,1.4051560999996582
|
LinkedList,Отсортированный,Вставка,1.3893881999974838
|
||||||
LinkedList,Случайный,Поиск,0.017782200000510784
|
LinkedList,Случайный,Поиск,0.015201199996226933
|
||||||
LinkedList,Отсортированный,Поиск,0.01736950000122306
|
LinkedList,Отсортированный,Поиск,0.015108999999938533
|
||||||
LinkedList,Случайный,Удаление,0.02435729999888281
|
LinkedList,Случайный,Удаление,0.022406399999454152
|
||||||
LinkedList,Отсортированный,Удаление,0.02374480000071344
|
LinkedList,Отсортированный,Удаление,0.020629700004064944
|
||||||
LinkedList,Случайный,Вставка,1.5062662000000273
|
LinkedList,Случайный,Вставка,1.449974499999371
|
||||||
LinkedList,Отсортированный,Вставка,1.4150953000007576
|
LinkedList,Отсортированный,Вставка,1.3638135000001057
|
||||||
LinkedList,Случайный,Поиск,0.017549800000779214
|
LinkedList,Случайный,Поиск,0.015704599994933233
|
||||||
LinkedList,Отсортированный,Поиск,0.01746169999933045
|
LinkedList,Отсортированный,Поиск,0.01463000000512693
|
||||||
LinkedList,Случайный,Удаление,0.024229800001194235
|
LinkedList,Случайный,Удаление,0.022265100000367966
|
||||||
LinkedList,Отсортированный,Удаление,0.02227369999855
|
LinkedList,Отсортированный,Удаление,0.02105920000030892
|
||||||
LinkedList,Случайный,Вставка,1.5289076999997633
|
LinkedList,Случайный,Вставка,1.4561604999980773
|
||||||
LinkedList,Отсортированный,Вставка,1.411172299998725
|
LinkedList,Отсортированный,Вставка,1.3799706000063452
|
||||||
LinkedList,Случайный,Поиск,0.017436600001019542
|
LinkedList,Случайный,Поиск,0.016086200004792772
|
||||||
LinkedList,Отсортированный,Поиск,0.01663180000105058
|
LinkedList,Отсортированный,Поиск,0.015208000004349742
|
||||||
LinkedList,Случайный,Удаление,0.023982900000191876
|
LinkedList,Случайный,Удаление,0.022321299999020994
|
||||||
LinkedList,Отсортированный,Удаление,0.022638300000835443
|
LinkedList,Отсортированный,Удаление,0.02096989999699872
|
||||||
HashTable,Случайный,Вставка,0.004706399999122368
|
HashTable,Случайный,Вставка,0.004762600001413375
|
||||||
HashTable,Отсортированный,Вставка,0.004241700000420678
|
HashTable,Отсортированный,Вставка,0.004286799994588364
|
||||||
HashTable,Случайный,Поиск,4.660000013245735e-05
|
HashTable,Случайный,Поиск,8.940000407164916e-05
|
||||||
HashTable,Отсортированный,Поиск,4.2300000131945126e-05
|
HashTable,Отсортированный,Поиск,4.9100002797786146e-05
|
||||||
HashTable,Случайный,Удаление,2.8800001018680632e-05
|
HashTable,Случайный,Удаление,4.640000406652689e-05
|
||||||
HashTable,Отсортированный,Удаление,2.4300001314259134e-05
|
HashTable,Отсортированный,Удаление,3.0499999411404133e-05
|
||||||
HashTable,Случайный,Вставка,0.004257600001437822
|
HashTable,Случайный,Вставка,0.004430200002389029
|
||||||
HashTable,Отсортированный,Вставка,0.0041388999998162035
|
HashTable,Отсортированный,Вставка,0.0042608000003383495
|
||||||
HashTable,Случайный,Поиск,4.329999865149148e-05
|
HashTable,Случайный,Поиск,9.210000280290842e-05
|
||||||
HashTable,Отсортированный,Поиск,4.219999937049579e-05
|
HashTable,Отсортированный,Поиск,7.370000093942508e-05
|
||||||
HashTable,Случайный,Удаление,3.5000000934815034e-05
|
HashTable,Случайный,Удаление,7.31999971321784e-05
|
||||||
HashTable,Отсортированный,Удаление,3.199999991920777e-05
|
HashTable,Отсортированный,Удаление,6.399999983841553e-05
|
||||||
HashTable,Случайный,Вставка,0.004153400001086993
|
HashTable,Случайный,Вставка,0.0045229000024846755
|
||||||
HashTable,Отсортированный,Вставка,0.00404770000022836
|
HashTable,Отсортированный,Вставка,0.04055210000660736
|
||||||
HashTable,Случайный,Поиск,4.3000000005122274e-05
|
HashTable,Случайный,Поиск,8.369999704882503e-05
|
||||||
HashTable,Отсортированный,Поиск,4.160000025876798e-05
|
HashTable,Отсортированный,Поиск,8.660000457894057e-05
|
||||||
HashTable,Случайный,Удаление,3.470000046945643e-05
|
HashTable,Случайный,Удаление,6.089999806135893e-05
|
||||||
HashTable,Отсортированный,Удаление,3.169999945384916e-05
|
HashTable,Отсортированный,Удаление,5.7999997807201e-05
|
||||||
HashTable,Случайный,Вставка,0.03171919999840611
|
HashTable,Случайный,Вставка,0.004763600001751911
|
||||||
HashTable,Отсортированный,Вставка,0.0047309999990829965
|
HashTable,Отсортированный,Вставка,0.004424899998412002
|
||||||
HashTable,Случайный,Поиск,0.00016730000061215833
|
HashTable,Случайный,Поиск,8.250000246334821e-05
|
||||||
HashTable,Отсортированный,Поиск,0.00016680000044289045
|
HashTable,Отсортированный,Поиск,8.560000424040481e-05
|
||||||
HashTable,Случайный,Удаление,0.00010769999971671496
|
HashTable,Случайный,Удаление,5.860000237589702e-05
|
||||||
HashTable,Отсортированный,Удаление,9.990000035031699e-05
|
HashTable,Отсортированный,Удаление,5.6599994422867894e-05
|
||||||
HashTable,Случайный,Вставка,0.0044019999986630864
|
HashTable,Случайный,Вставка,0.004511299994192086
|
||||||
HashTable,Отсортированный,Вставка,0.004194899998765322
|
HashTable,Отсортированный,Вставка,0.004239499998220708
|
||||||
HashTable,Случайный,Поиск,0.00012280000009923242
|
HashTable,Случайный,Поиск,8.509999315720052e-05
|
||||||
HashTable,Отсортированный,Поиск,0.00011839999933727086
|
HashTable,Отсортированный,Поиск,9.129999671131372e-05
|
||||||
HashTable,Случайный,Удаление,8.170000000973232e-05
|
HashTable,Случайный,Удаление,6.379999831551686e-05
|
||||||
HashTable,Отсортированный,Удаление,8.010000055946875e-05
|
HashTable,Отсортированный,Удаление,6.130000110715628e-05
|
||||||
BinarySearchTree,Случайный,Вставка,0.016431300000476767
|
BinarySearchTree,Случайный,Вставка,0.01562519999424694
|
||||||
BinarySearchTree,Отсортированный,Вставка,7.383592899999712
|
BinarySearchTree,Отсортированный,Вставка,7.336836000002222
|
||||||
BinarySearchTree,Случайный,Поиск,0.00029010000071139075
|
BinarySearchTree,Случайный,Поиск,0.00026790000265464187
|
||||||
BinarySearchTree,Отсортированный,Поиск,0.058574799999405514
|
BinarySearchTree,Отсортированный,Поиск,0.06123769999976503
|
||||||
BinarySearchTree,Случайный,Удаление,0.00019500000053085387
|
BinarySearchTree,Случайный,Удаление,0.00017079999815905467
|
||||||
BinarySearchTree,Отсортированный,Удаление,0.035139699999490404
|
BinarySearchTree,Отсортированный,Удаление,0.03255199999694014
|
||||||
BinarySearchTree,Случайный,Вставка,0.01684449999993376
|
BinarySearchTree,Случайный,Вставка,0.015844699999433942
|
||||||
BinarySearchTree,Отсортированный,Вставка,7.405079000000114
|
BinarySearchTree,Отсортированный,Вставка,7.3568257999941125
|
||||||
BinarySearchTree,Случайный,Поиск,0.0002845999988494441
|
BinarySearchTree,Случайный,Поиск,0.00026610000350046903
|
||||||
BinarySearchTree,Отсортированный,Поиск,0.056575599999632686
|
BinarySearchTree,Отсортированный,Поиск,0.0630747999966843
|
||||||
BinarySearchTree,Случайный,Удаление,0.000167199999850709
|
BinarySearchTree,Случайный,Удаление,0.0001599000024725683
|
||||||
BinarySearchTree,Отсортированный,Удаление,0.03582719999940309
|
BinarySearchTree,Отсортированный,Удаление,0.032988799997838214
|
||||||
BinarySearchTree,Случайный,Вставка,0.01675249999971129
|
BinarySearchTree,Случайный,Вставка,0.015961999997671228
|
||||||
BinarySearchTree,Отсортированный,Вставка,7.355735600000116
|
BinarySearchTree,Отсортированный,Вставка,7.260040799999842
|
||||||
BinarySearchTree,Случайный,Поиск,0.00025770000138436444
|
BinarySearchTree,Случайный,Поиск,0.0002677000011317432
|
||||||
BinarySearchTree,Отсортированный,Поиск,0.05426189999889175
|
BinarySearchTree,Отсортированный,Поиск,0.06220960000064224
|
||||||
BinarySearchTree,Случайный,Удаление,0.00015389999862236436
|
BinarySearchTree,Случайный,Удаление,0.00017069999739760533
|
||||||
BinarySearchTree,Отсортированный,Удаление,0.03391879999981029
|
BinarySearchTree,Отсортированный,Удаление,0.03425799999968149
|
||||||
BinarySearchTree,Случайный,Вставка,0.016885099999853992
|
BinarySearchTree,Случайный,Вставка,0.015901699996902607
|
||||||
BinarySearchTree,Отсортированный,Вставка,7.338030799999615
|
BinarySearchTree,Отсортированный,Вставка,7.299930900000618
|
||||||
BinarySearchTree,Случайный,Поиск,0.0002921999985119328
|
BinarySearchTree,Случайный,Поиск,0.0002571000004536472
|
||||||
BinarySearchTree,Отсортированный,Поиск,0.0575857999992877
|
BinarySearchTree,Отсортированный,Поиск,0.06639849999919534
|
||||||
BinarySearchTree,Случайный,Удаление,0.0001720000000204891
|
BinarySearchTree,Случайный,Удаление,0.0001795999996829778
|
||||||
BinarySearchTree,Отсортированный,Удаление,0.03530189999946742
|
BinarySearchTree,Отсортированный,Удаление,0.035809200002404395
|
||||||
BinarySearchTree,Случайный,Вставка,0.017169299999295617
|
BinarySearchTree,Случайный,Вставка,0.016659100001561455
|
||||||
BinarySearchTree,Отсортированный,Вставка,7.8378021999997145
|
BinarySearchTree,Отсортированный,Вставка,7.283139200000733
|
||||||
BinarySearchTree,Случайный,Поиск,0.00032219999957305845
|
BinarySearchTree,Случайный,Поиск,0.0002609000002848916
|
||||||
BinarySearchTree,Отсортированный,Поиск,0.06426450000071782
|
BinarySearchTree,Отсортированный,Поиск,0.06249949999619275
|
||||||
BinarySearchTree,Случайный,Удаление,0.00019729999985429458
|
BinarySearchTree,Случайный,Удаление,0.00016070000128820539
|
||||||
BinarySearchTree,Отсортированный,Удаление,0.04044439999961469
|
BinarySearchTree,Отсортированный,Удаление,0.033680200001981575
|
||||||
|
|
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
import time
|
import time
|
||||||
|
from pathlib import Path
|
||||||
import random
|
import random
|
||||||
import csv
|
import csv
|
||||||
import sys
|
import sys
|
||||||
|
|
@ -187,19 +188,20 @@ def task_C(structure_name,container, data):
|
||||||
end=time.perf_counter()
|
end=time.perf_counter()
|
||||||
elapsed = end - start
|
elapsed = end - start
|
||||||
return elapsed
|
return elapsed
|
||||||
conatiner_type=[None, [None]*1000, None]
|
|
||||||
results=[["Структура", "Режим", "Операция", "Время (сек)"]]
|
results=[["Структура", "Режим", "Операция", "Время (сек)"]]
|
||||||
structures_name=["LinkedList", "HashTable", "BinarySearchTree"]
|
structures_name=["LinkedList", "HashTable", "BinarySearchTree"]
|
||||||
experiment_name=["Вставка", "Поиск", "Удаление"]
|
experiment_name=["Вставка", "Поиск", "Удаление"]
|
||||||
mode_of_data=["Случайный", "Отсортированный"]
|
mode_of_data=["Случайный", "Отсортированный"]
|
||||||
|
|
||||||
records_sorted, records_shuffled = generate()
|
records_sorted, records_shuffled = generate()
|
||||||
container_shuffled=[]
|
container_shuffled=[]#хранилище структур со случайными данными
|
||||||
container_sorted=[]
|
container_sorted=[]#хранилище структур с отсортированными данными
|
||||||
names=[record[0] for record in records_shuffled]
|
names=[record[0] for record in records_shuffled]
|
||||||
|
#Данные для задания Б
|
||||||
random_names=random.sample(names, 100)
|
random_names=random.sample(names, 100)
|
||||||
missing_names=[f"None_{i}" for i in range(10)]
|
missing_names=[f"None_{i}" for i in range(10)]
|
||||||
names_for_test=random_names+missing_names
|
names_for_test=random_names+missing_names
|
||||||
|
#Данные для задания В
|
||||||
names_to_delete=random.sample(names,50)
|
names_to_delete=random.sample(names,50)
|
||||||
|
|
||||||
for i in range(3):
|
for i in range(3):
|
||||||
|
|
@ -219,8 +221,7 @@ for i in range(3):
|
||||||
|
|
||||||
result_sorted = task_B(structures_name[i], container_sorted[i], names_for_test)
|
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])
|
results.append([structures_name[i], mode_of_data[1], experiment_name[1], result_sorted])
|
||||||
print(
|
print(f"{structures_name[i]}: Время нахождения 110 записей для {mode_of_data[0]}: {result_shuffled} {mode_of_data[1]}: {result_sorted} ")
|
||||||
f"{structures_name[i]}: Время выполнения для 110 записей для {mode_of_data[0]}: {result_shuffled} {mode_of_data[1]}: {result_sorted} ")
|
|
||||||
#Реализация задания В
|
#Реализация задания В
|
||||||
shuffled = container_shuffled[i]
|
shuffled = container_shuffled[i]
|
||||||
sorted = container_sorted[i]
|
sorted = container_sorted[i]
|
||||||
|
|
@ -229,12 +230,13 @@ for i in range(3):
|
||||||
|
|
||||||
result_sorted = task_C(structures_name[i], sorted, names_to_delete)
|
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])
|
results.append([structures_name[i], mode_of_data[1], experiment_name[2], result_sorted])
|
||||||
print(
|
print(f"{structures_name[i]}: Время удаления 50 записей для {mode_of_data[0]}: {result_shuffled} {mode_of_data[1]}: {result_sorted}")
|
||||||
f"{structures_name[i]}: Время удаления 50 записей для {mode_of_data[0]}: {result_shuffled} {mode_of_data[1]}: {result_sorted}")
|
|
||||||
|
|
||||||
#4. Сохранение результатов
|
#4. Сохранение результатов\
|
||||||
csv_file=r"C:\Users\Андрей\Desktop\2026-rff_mp\YanyaevAA\docs\data\results.csv"
|
current_dir=Path.cwd()
|
||||||
with open(r"C:\Users\Андрей\Desktop\2026-rff_mp\YanyaevAA\docs\data\results.csv", "w", newline="",encoding="utf-8") as f:
|
target=current_dir.parent/"docs"/"data"
|
||||||
|
csv_file=target /"results.csv"
|
||||||
|
with open(csv_file, "w", newline="",encoding="utf-8-sig") as f:
|
||||||
writer = csv.writer(f)
|
writer = csv.writer(f)
|
||||||
writer.writerows(results)
|
writer.writerows(results)
|
||||||
|
|
||||||
|
|
@ -249,5 +251,6 @@ for i, experiment in enumerate(experiment_name):
|
||||||
axes[i].set_ylabel("Среднее время (сек)")
|
axes[i].set_ylabel("Среднее время (сек)")
|
||||||
axes[i].set_yscale("log")
|
axes[i].set_yscale("log")
|
||||||
plt.tight_layout()
|
plt.tight_layout()
|
||||||
plt.savefig(r"C:\Users\Андрей\Desktop\2026-rff_mp\YanyaevAA\docs\data\graphics.png", dpi=300, bbox_inches='tight')
|
png_file= target/"graphics.png"
|
||||||
|
plt.savefig(png_file, dpi=300, bbox_inches='tight')
|
||||||
plt.show()
|
plt.show()
|
||||||
Loading…
Reference in New Issue
Block a user