Изменена реализация заданий
This commit is contained in:
parent
dec46dcc0a
commit
033419ac3f
Binary file not shown.
|
Before Width: | Height: | Size: 130 KiB After Width: | Height: | Size: 129 KiB |
|
|
@ -1,91 +1,91 @@
|
||||||
Структура,Режим,Операция,Время (сек)
|
Структура,Режим,Операция,Время (сек)
|
||||||
LinkedList,Случайный,Вставка,1.3571506999942358
|
LinkedList,Случайный,Вставка,1.4751020000003336
|
||||||
LinkedList,Отсортированный,Вставка,1.3104410000014468
|
LinkedList,Отсортированный,Вставка,1.409119699999792
|
||||||
LinkedList,Случайный,Вставка,1.370557700000063
|
LinkedList,Случайный,Поиск,0.017900500000905595
|
||||||
LinkedList,Отсортированный,Вставка,1.3163567000010516
|
LinkedList,Отсортированный,Поиск,0.01725550000082876
|
||||||
LinkedList,Случайный,Вставка,1.3726127999980235
|
LinkedList,Случайный,Удаление,0.013612400000056368
|
||||||
LinkedList,Отсортированный,Вставка,1.3090860000011162
|
LinkedList,Отсортированный,Удаление,0.011873999999806983
|
||||||
LinkedList,Случайный,Вставка,1.4184881000037421
|
LinkedList,Случайный,Вставка,1.501550999999381
|
||||||
LinkedList,Отсортированный,Вставка,1.3065769000022556
|
LinkedList,Отсортированный,Вставка,1.414307999999437
|
||||||
LinkedList,Случайный,Вставка,1.4324161999975331
|
LinkedList,Случайный,Поиск,0.017685799999526353
|
||||||
LinkedList,Отсортированный,Вставка,1.302870300001814
|
LinkedList,Отсортированный,Поиск,0.017450199999075267
|
||||||
HashTable,Случайный,Вставка,0.005242100000032224
|
LinkedList,Случайный,Удаление,0.02419449999979406
|
||||||
HashTable,Отсортированный,Вставка,0.004384200001368299
|
LinkedList,Отсортированный,Удаление,0.022431700001106947
|
||||||
HashTable,Случайный,Вставка,0.004452300003322307
|
LinkedList,Случайный,Вставка,1.492261999999755
|
||||||
HashTable,Отсортированный,Вставка,0.004285000002710149
|
LinkedList,Отсортированный,Вставка,1.4051560999996582
|
||||||
HashTable,Случайный,Вставка,0.0043441999951028265
|
LinkedList,Случайный,Поиск,0.017782200000510784
|
||||||
HashTable,Отсортированный,Вставка,0.004188300001260359
|
LinkedList,Отсортированный,Поиск,0.01736950000122306
|
||||||
HashTable,Случайный,Вставка,0.031318500004999805
|
LinkedList,Случайный,Удаление,0.02435729999888281
|
||||||
HashTable,Отсортированный,Вставка,0.004467499995371327
|
LinkedList,Отсортированный,Удаление,0.02374480000071344
|
||||||
HashTable,Случайный,Вставка,0.004497000001720153
|
LinkedList,Случайный,Вставка,1.5062662000000273
|
||||||
HashTable,Отсортированный,Вставка,0.00432149999687681
|
LinkedList,Отсортированный,Вставка,1.4150953000007576
|
||||||
BinarySearchTree,Случайный,Вставка,0.016076799998700153
|
LinkedList,Случайный,Поиск,0.017549800000779214
|
||||||
BinarySearchTree,Отсортированный,Вставка,6.949058300000615
|
LinkedList,Отсортированный,Поиск,0.01746169999933045
|
||||||
BinarySearchTree,Случайный,Вставка,0.015741900002467446
|
LinkedList,Случайный,Удаление,0.024229800001194235
|
||||||
BinarySearchTree,Отсортированный,Вставка,7.462577500002226
|
LinkedList,Отсортированный,Удаление,0.02227369999855
|
||||||
BinarySearchTree,Случайный,Вставка,0.0162205999949947
|
LinkedList,Случайный,Вставка,1.5289076999997633
|
||||||
BinarySearchTree,Отсортированный,Вставка,7.46889309999824
|
LinkedList,Отсортированный,Вставка,1.411172299998725
|
||||||
BinarySearchTree,Случайный,Вставка,0.016196600001421757
|
LinkedList,Случайный,Поиск,0.017436600001019542
|
||||||
BinarySearchTree,Отсортированный,Вставка,7.423307500001101
|
LinkedList,Отсортированный,Поиск,0.01663180000105058
|
||||||
BinarySearchTree,Случайный,Вставка,0.015813499994692393
|
LinkedList,Случайный,Удаление,0.023982900000191876
|
||||||
BinarySearchTree,Отсортированный,Вставка,7.387505999999121
|
LinkedList,Отсортированный,Удаление,0.022638300000835443
|
||||||
LinkedList,Случайный,Поиск,0.016872100000909995
|
HashTable,Случайный,Вставка,0.004706399999122368
|
||||||
LinkedList,Отсортированный,Поиск,0.016344399999070447
|
HashTable,Отсортированный,Вставка,0.004241700000420678
|
||||||
LinkedList,Случайный,Поиск,0.017215699997905176
|
HashTable,Случайный,Поиск,4.660000013245735e-05
|
||||||
LinkedList,Отсортированный,Поиск,0.016057599998021033
|
HashTable,Отсортированный,Поиск,4.2300000131945126e-05
|
||||||
LinkedList,Случайный,Поиск,0.017128699997556396
|
HashTable,Случайный,Удаление,2.8800001018680632e-05
|
||||||
LinkedList,Отсортированный,Поиск,0.016144599998369813
|
HashTable,Отсортированный,Удаление,2.4300001314259134e-05
|
||||||
LinkedList,Случайный,Поиск,0.01743249999708496
|
HashTable,Случайный,Вставка,0.004257600001437822
|
||||||
LinkedList,Отсортированный,Поиск,0.016194900003029034
|
HashTable,Отсортированный,Вставка,0.0041388999998162035
|
||||||
LinkedList,Случайный,Поиск,0.017249500000616536
|
HashTable,Случайный,Поиск,4.329999865149148e-05
|
||||||
LinkedList,Отсортированный,Поиск,0.01595439999800874
|
HashTable,Отсортированный,Поиск,4.219999937049579e-05
|
||||||
HashTable,Случайный,Поиск,0.00018319999799132347
|
HashTable,Случайный,Удаление,3.5000000934815034e-05
|
||||||
HashTable,Отсортированный,Поиск,0.0001588000013725832
|
HashTable,Отсортированный,Удаление,3.199999991920777e-05
|
||||||
HashTable,Случайный,Поиск,3.9999998989515007e-05
|
HashTable,Случайный,Вставка,0.004153400001086993
|
||||||
HashTable,Отсортированный,Поиск,3.5400000342633575e-05
|
HashTable,Отсортированный,Вставка,0.00404770000022836
|
||||||
HashTable,Случайный,Поиск,3.580000338843092e-05
|
HashTable,Случайный,Поиск,4.3000000005122274e-05
|
||||||
HashTable,Отсортированный,Поиск,3.4199998481199145e-05
|
HashTable,Отсортированный,Поиск,4.160000025876798e-05
|
||||||
HashTable,Случайный,Поиск,3.5099998058285564e-05
|
HashTable,Случайный,Удаление,3.470000046945643e-05
|
||||||
HashTable,Отсортированный,Поиск,3.4199998481199145e-05
|
HashTable,Отсортированный,Удаление,3.169999945384916e-05
|
||||||
HashTable,Случайный,Поиск,3.5099998058285564e-05
|
HashTable,Случайный,Вставка,0.03171919999840611
|
||||||
HashTable,Отсортированный,Поиск,3.409999771974981e-05
|
HashTable,Отсортированный,Вставка,0.0047309999990829965
|
||||||
BinarySearchTree,Случайный,Поиск,0.00023979999969014898
|
HashTable,Случайный,Поиск,0.00016730000061215833
|
||||||
BinarySearchTree,Отсортированный,Поиск,0.06078229999548057
|
HashTable,Отсортированный,Поиск,0.00016680000044289045
|
||||||
BinarySearchTree,Случайный,Поиск,0.0002549999990151264
|
HashTable,Случайный,Удаление,0.00010769999971671496
|
||||||
BinarySearchTree,Отсортированный,Поиск,0.05937499999708962
|
HashTable,Отсортированный,Удаление,9.990000035031699e-05
|
||||||
BinarySearchTree,Случайный,Поиск,0.0005522999999811873
|
HashTable,Случайный,Вставка,0.0044019999986630864
|
||||||
BinarySearchTree,Отсортированный,Поиск,0.057940200000302866
|
HashTable,Отсортированный,Вставка,0.004194899998765322
|
||||||
BinarySearchTree,Случайный,Поиск,0.00025070000265259296
|
HashTable,Случайный,Поиск,0.00012280000009923242
|
||||||
BinarySearchTree,Отсортированный,Поиск,0.060181100001500454
|
HashTable,Отсортированный,Поиск,0.00011839999933727086
|
||||||
BinarySearchTree,Случайный,Поиск,0.0002657000004546717
|
HashTable,Случайный,Удаление,8.170000000973232e-05
|
||||||
BinarySearchTree,Отсортированный,Поиск,0.05845009999757167
|
HashTable,Отсортированный,Удаление,8.010000055946875e-05
|
||||||
LinkedList,Случайный,Удаление,0.010934500001894776
|
BinarySearchTree,Случайный,Вставка,0.016431300000476767
|
||||||
LinkedList,Отсортированный,Удаление,0.011079000003519468
|
BinarySearchTree,Отсортированный,Вставка,7.383592899999712
|
||||||
LinkedList,Случайный,Удаление,0.021408699998573866
|
BinarySearchTree,Случайный,Поиск,0.00029010000071139075
|
||||||
LinkedList,Отсортированный,Удаление,0.01955590000579832
|
BinarySearchTree,Отсортированный,Поиск,0.058574799999405514
|
||||||
LinkedList,Случайный,Удаление,0.020861200006038416
|
BinarySearchTree,Случайный,Удаление,0.00019500000053085387
|
||||||
LinkedList,Отсортированный,Удаление,0.020471800002269447
|
BinarySearchTree,Отсортированный,Удаление,0.035139699999490404
|
||||||
LinkedList,Случайный,Удаление,0.02055800000380259
|
BinarySearchTree,Случайный,Вставка,0.01684449999993376
|
||||||
LinkedList,Отсортированный,Удаление,0.01997020000271732
|
BinarySearchTree,Отсортированный,Вставка,7.405079000000114
|
||||||
LinkedList,Случайный,Удаление,0.021316799997293856
|
BinarySearchTree,Случайный,Поиск,0.0002845999988494441
|
||||||
LinkedList,Отсортированный,Удаление,0.02057559999957448
|
BinarySearchTree,Отсортированный,Поиск,0.056575599999632686
|
||||||
HashTable,Случайный,Удаление,9.029999637277797e-05
|
BinarySearchTree,Случайный,Удаление,0.000167199999850709
|
||||||
HashTable,Отсортированный,Удаление,8.179999713320285e-05
|
BinarySearchTree,Отсортированный,Удаление,0.03582719999940309
|
||||||
HashTable,Случайный,Удаление,6.199999916134402e-05
|
BinarySearchTree,Случайный,Вставка,0.01675249999971129
|
||||||
HashTable,Отсортированный,Удаление,5.950000195298344e-05
|
BinarySearchTree,Отсортированный,Вставка,7.355735600000116
|
||||||
HashTable,Случайный,Удаление,2.6599998818710446e-05
|
BinarySearchTree,Случайный,Поиск,0.00025770000138436444
|
||||||
HashTable,Отсортированный,Удаление,2.6399997295811772e-05
|
BinarySearchTree,Отсортированный,Поиск,0.05426189999889175
|
||||||
HashTable,Случайный,Удаление,2.6500005333218724e-05
|
BinarySearchTree,Случайный,Удаление,0.00015389999862236436
|
||||||
HashTable,Отсортированный,Удаление,2.630000381032005e-05
|
BinarySearchTree,Отсортированный,Удаление,0.03391879999981029
|
||||||
HashTable,Случайный,Удаление,2.630000381032005e-05
|
BinarySearchTree,Случайный,Вставка,0.016885099999853992
|
||||||
HashTable,Отсортированный,Удаление,2.6200003048870713e-05
|
BinarySearchTree,Отсортированный,Вставка,7.338030799999615
|
||||||
BinarySearchTree,Случайный,Удаление,0.00017410000145900995
|
BinarySearchTree,Случайный,Поиск,0.0002921999985119328
|
||||||
BinarySearchTree,Отсортированный,Удаление,0.03420480000204407
|
BinarySearchTree,Отсортированный,Поиск,0.0575857999992877
|
||||||
BinarySearchTree,Случайный,Удаление,0.00016069999401224777
|
BinarySearchTree,Случайный,Удаление,0.0001720000000204891
|
||||||
BinarySearchTree,Отсортированный,Удаление,0.03399109999736538
|
BinarySearchTree,Отсортированный,Удаление,0.03530189999946742
|
||||||
BinarySearchTree,Случайный,Удаление,0.00016940000205067918
|
BinarySearchTree,Случайный,Вставка,0.017169299999295617
|
||||||
BinarySearchTree,Отсортированный,Удаление,0.03377170000021579
|
BinarySearchTree,Отсортированный,Вставка,7.8378021999997145
|
||||||
BinarySearchTree,Случайный,Удаление,0.00018689999706111848
|
BinarySearchTree,Случайный,Поиск,0.00032219999957305845
|
||||||
BinarySearchTree,Отсортированный,Удаление,0.033754900003259536
|
BinarySearchTree,Отсортированный,Поиск,0.06426450000071782
|
||||||
BinarySearchTree,Случайный,Удаление,0.0001664000010350719
|
BinarySearchTree,Случайный,Удаление,0.00019729999985429458
|
||||||
BinarySearchTree,Отсортированный,Удаление,0.03359389999968698
|
BinarySearchTree,Отсортированный,Удаление,0.04044439999961469
|
||||||
|
|
|
||||||
|
|
|
@ -155,25 +155,6 @@ def task_A(structure_name, data):
|
||||||
end = time.perf_counter()
|
end = time.perf_counter()
|
||||||
elapsed = end - start
|
elapsed = end - start
|
||||||
return elapsed, container
|
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 случайных записей
|
#Б. Поиск 100 случайных записей
|
||||||
def task_B(structure_name,container, data):
|
def task_B(structure_name,container, data):
|
||||||
|
|
@ -191,22 +172,6 @@ def task_B(structure_name,container, data):
|
||||||
elapsed = end - start
|
elapsed = end - start
|
||||||
return elapsed
|
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 случайных чисел
|
#В. Удаление 50 случайных чисел
|
||||||
def task_C(structure_name,container, data):
|
def task_C(structure_name,container, data):
|
||||||
start=time.perf_counter()
|
start=time.perf_counter()
|
||||||
|
|
@ -222,20 +187,50 @@ 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=[["Структура", "Режим", "Операция", "Время (сек)"]]
|
||||||
|
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)
|
names_to_delete=random.sample(names,50)
|
||||||
print("Результаты задания В")
|
|
||||||
|
|
||||||
for i in range(3):
|
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):
|
for j in range(5):
|
||||||
shuffled=container_shuffled[i]
|
# Реализация задания А
|
||||||
sorted=container_sorted[i]
|
result_shuffled = task_A(structures_name[i], records_shuffled)[0]
|
||||||
result_shuffled=task_C(structures_name[i], shuffled, names_to_delete)
|
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])
|
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)
|
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(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. Сохранение результатов
|
#4. Сохранение результатов
|
||||||
csv_file=r"C:\Users\Андрей\Desktop\2026-rff_mp\YanyaevAA\docs\data\results.csv"
|
csv_file=r"C:\Users\Андрей\Desktop\2026-rff_mp\YanyaevAA\docs\data\results.csv"
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user