diff --git a/MusinAA/docs/Report 1.ipynb b/MusinAA/docs/Report 1.ipynb index 3e19ef8..3af91fe 100644 --- a/MusinAA/docs/Report 1.ipynb +++ b/MusinAA/docs/Report 1.ipynb @@ -10,7 +10,7 @@ }, { "cell_type": "code", - "execution_count": 16, + "execution_count": 26, "id": "4689b73e", "metadata": {}, "outputs": [], @@ -38,7 +38,7 @@ }, { "cell_type": "code", - "execution_count": 17, + "execution_count": 27, "id": "a3b5c31b", "metadata": {}, "outputs": [], @@ -60,7 +60,7 @@ }, { "cell_type": "code", - "execution_count": 18, + "execution_count": 28, "id": "df12d41d", "metadata": {}, "outputs": [], @@ -77,7 +77,7 @@ }, { "cell_type": "code", - "execution_count": 24, + "execution_count": 29, "id": "cc8d0436", "metadata": {}, "outputs": [], @@ -101,7 +101,7 @@ }, { "cell_type": "code", - "execution_count": 25, + "execution_count": 30, "id": "2eedf056", "metadata": {}, "outputs": [], @@ -112,6 +112,16 @@ " writer = csv.writer(f)\n", " writer.writerows(report)" ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "8523ae48", + "metadata": {}, + "outputs": [], + "source": [ + "TODO проверить работает ли оно вообще" + ] } ], "metadata": { diff --git a/MusinAA/docs/data/results.csv b/MusinAA/docs/data/results.csv index f8fd074..8f5e275 100644 --- a/MusinAA/docs/data/results.csv +++ b/MusinAA/docs/data/results.csv @@ -1,31 +1,31 @@ Структура,Режим,Вставка,Поиск,Удаление -Связанный список,Cлучайный,6.184219556999778,0.01564759699977003,0.020917029999509396 -Хэш-таблица,Cлучайный,0.20728507099920535,0.0011867590001202188,0.0012845039991589147 -Бинарное дерево,Cлучайный,0.01599855899985414,0.00017333699997834628,0.0001880449999589473 -Связанный список,Отсортированный,6.1492630290003945,0.08403158500004793,0.11902903299960599 -Хэш-таблица,Отсортированный,0.1831843130003108,0.003145785999549844,0.0030832479997116025 -Бинарное дерево,Отсортированный,0.17353334099971107,0.0018611919995237258,0.001973905000340892 -Связанный список,Cлучайный,5.064191275000667,0.015435045000231185,0.021122407000802923 -Хэш-таблица,Cлучайный,0.21584205599992856,0.001062764999915089,0.0010387600004833075 -Бинарное дерево,Cлучайный,0.01586526800019783,0.0001650120002523181,0.0002011500000662636 -Связанный список,Отсортированный,5.008700298999429,0.08874143100001675,0.11785725200024899 -Хэш-таблица,Отсортированный,0.16122512399942934,0.0027618209996944643,0.0031808120002096985 -Бинарное дерево,Отсортированный,0.16625836200000776,0.0017326589995718678,0.0018288709998159902 -Связанный список,Cлучайный,4.973175217000062,0.016034526000112237,0.029878299000301922 -Хэш-таблица,Cлучайный,0.19947776500066539,0.0008432810000158497,0.0009618849999242229 -Бинарное дерево,Cлучайный,0.015627648000190675,0.00015909000012470642,0.00018263399942952674 -Связанный список,Отсортированный,4.7649637760005135,0.07843009399948642,0.11216894700010016 -Хэш-таблица,Отсортированный,0.16914973799975996,0.0028197709998494247,0.003400436000447371 -Бинарное дерево,Отсортированный,0.16913629200007563,0.00174245800008066,0.00184838800032594 -Связанный список,Cлучайный,5.070599788999971,0.023625830999662867,0.024334026999895286 -Хэш-таблица,Cлучайный,0.2566551750005601,0.001680571000179043,0.0019877810000252794 -Бинарное дерево,Cлучайный,0.02019279199976154,0.00019776400040427689,0.0002360259995839442 -Связанный список,Отсортированный,5.0148616579999725,0.08842415099934442,0.13560766399950808 -Хэш-таблица,Отсортированный,0.18670927000039228,0.0038891280000825645,0.0034846049993575434 -Бинарное дерево,Отсортированный,0.1774570309999035,0.0019291399994472158,0.0021798640000270098 -Связанный список,Cлучайный,5.373787051000363,0.021812238000165962,0.025861819999590807 -Хэш-таблица,Cлучайный,0.19457704500018735,0.00110557600055472,0.0010436189995743916 -Бинарное дерево,Cлучайный,0.015349283000432479,0.00016242600031546317,0.00017538100019010017 -Связанный список,Отсортированный,5.167020247999972,0.08513789999960863,0.12899004599967157 -Хэш-таблица,Отсортированный,0.18223923400000785,0.0032350740002584644,0.0037601450003421633 -Бинарное дерево,Отсортированный,0.1719607389995872,0.0017423979998056893,0.0018891839999923832 +Связанный список,Cлучайный,4.661078881000321,0.012941928999680385,0.020117076999667916 +Хэш-таблица,Cлучайный,0.18879180299973086,0.0014481220005109208,0.0012560499999381136 +Бинарное дерево,Cлучайный,0.01616830700004357,0.00016560199946979992,0.00016564300040045055 +Связанный список,Отсортированный,5.038275819999399,0.07141196100019442,0.1353478549999636 +Хэш-таблица,Отсортированный,0.1631836659998953,0.003129734999674838,0.003202291999514273 +Бинарное дерево,Отсортированный,0.16634428900033527,0.0017354540004816954,0.001874036000117485 +Связанный список,Cлучайный,4.664316974999565,0.014653709000413073,0.02280332600003021 +Хэш-таблица,Cлучайный,0.186777711999639,0.0010283499996148748,0.0009878339997158037 +Бинарное дерево,Cлучайный,0.016256722999969497,0.00015175599946815055,0.0001649409996389295 +Связанный список,Отсортированный,5.907060995999927,0.08458327099924645,0.12409427100010362 +Хэш-таблица,Отсортированный,0.18781050100005814,0.003518858999996155,0.0038270310005827923 +Бинарное дерево,Отсортированный,0.17500397699950554,0.0019018089997189236,0.001833940000324219 +Связанный список,Cлучайный,5.755159846999959,0.016742109000006167,0.026386416000605095 +Хэш-таблица,Cлучайный,0.22951744300007704,0.0009921219998432207,0.0011742059996322496 +Бинарное дерево,Cлучайный,0.01580532200023299,0.00017768500038073398,0.00019722199976968113 +Связанный список,Отсортированный,6.30150953500015,0.11176149099992472,0.1474957850005012 +Хэш-таблица,Отсортированный,0.18557919999966543,0.003155624000100943,0.002713390000280924 +Бинарное дерево,Отсортированный,0.19082545899982506,0.001985636999961571,0.002389950000178942 +Связанный список,Cлучайный,6.395210606000546,0.014804241999627266,0.02304338900012226 +Хэш-таблица,Cлучайный,0.1902105980007036,0.000852088000101503,0.0009626670007492066 +Бинарное дерево,Cлучайный,0.01663886400001502,0.00016400000004068715,0.000184548000106588 +Связанный список,Отсортированный,4.850914527999521,0.0771323629996914,0.1152741280002374 +Хэш-таблица,Отсортированный,0.17607759100064868,0.002924628000073426,0.0033850670006358996 +Бинарное дерево,Отсортированный,0.19345043999965128,0.0018585970001367969,0.0019752460002564476 +Связанный список,Cлучайный,4.803303787999539,0.015972447000422108,0.0223228390004806 +Хэш-таблица,Cлучайный,0.19020581800032232,0.0011616620004133438,0.0009839170006671338 +Бинарное дерево,Cлучайный,0.016469425000650517,0.000160212000082538,0.00017693399968266021 +Связанный список,Отсортированный,4.741838529000233,0.075463203000254,0.10462550600004761 +Хэш-таблица,Отсортированный,0.16722737300005974,0.004002030999799899,0.005207103999964602 +Бинарное дерево,Отсортированный,0.16575109800032806,0.0020921670002280734,0.002277146999404067 diff --git a/MusinAA/task1/util/timeTester.py b/MusinAA/task1/util/timeTester.py index 763b25d..3e3204e 100644 --- a/MusinAA/task1/util/timeTester.py +++ b/MusinAA/task1/util/timeTester.py @@ -1,6 +1,7 @@ import time +import random from typing import Callable, Any -from task1.util.randomNames import names_pool_to_find +from task1.util.randomNames import names_pool_to_find, names_pool def test(records: list, insert_func: Callable[[Any, str, str], Any], @@ -24,7 +25,7 @@ def test(records: list, # Удаление 50 случайных записей start = time.perf_counter() - for name in names_pool_to_find: + for name in random.choices(names_pool, k = 50): data = delete_func(data, name) end = time.perf_counter() delete_time = end - start