rupython 1.2.12__py3-none-any.whl → 1.2.13__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- rupython/__/342/225/250/320/247/342/225/250/342/226/221/342/225/250/342/224/202/342/225/250/342/225/233/342/225/250/342/225/227/342/225/250/342/225/233/342/225/250/342/226/223/342/225/250/342/225/233/342/225/244/320/227/342/225/250/342/225/234/342/225/244/320/233/342/225/250/342/225/243_/342/225/250/342/225/221/342/225/250/342/225/233/342/225/250/342/224/244__.py +49 -4
- rupython//342/225/250/320/254/342/225/250/342/225/233/342/225/250/342/224/244/342/225/244/320/223/342/225/250/342/225/227/342/225/250/342/225/225//342/225/250/320/240/342/225/244/320/221/342/225/250/342/225/225/342/225/250/342/225/234/342/225/244/320/225/342/225/244/320/220.py +100 -100
- rupython//342/225/250/320/254/342/225/250/342/225/233/342/225/250/342/224/244/342/225/244/320/223/342/225/250/342/225/227/342/225/250/342/225/225//342/225/250/320/241/342/225/250/320/244.py +56 -56
- rupython//342/225/250/320/254/342/225/250/342/225/233/342/225/250/342/224/244/342/225/244/320/223/342/225/250/342/225/227/342/225/250/342/225/225//342/225/250/320/244/342/225/250/342/226/221/342/225/244/320/222/342/225/250/342/226/221/342/225/250/320/242/342/225/244/320/220/342/225/250/342/225/241/342/225/250/342/225/235/342/225/244/320/237.py +212 -212
- rupython//342/225/250/320/254/342/225/250/342/225/233/342/225/250/342/224/244/342/225/244/320/223/342/225/250/342/225/227/342/225/250/342/225/225//342/225/250/320/252/342/225/244/320/223/342/225/244/320/227/342/225/250/342/226/221.py +32 -32
- rupython//342/225/250/320/254/342/225/250/342/225/233/342/225/250/342/224/244/342/225/244/320/223/342/225/250/342/225/227/342/225/250/342/225/225//342/225/250/320/252/342/225/250/342/225/233/342/225/250/342/225/227/342/225/250/342/225/227/342/225/250/342/225/241/342/225/250/342/225/221/342/225/244/320/226/342/225/250/342/225/225/342/225/250/342/225/225.py +326 -326
- rupython//342/225/250/320/254/342/225/250/342/225/233/342/225/250/342/224/244/342/225/244/320/223/342/225/250/342/225/227/342/225/250/342/225/225//342/225/250/320/256/342/225/244/320/227/342/225/250/342/225/241/342/225/244/320/220/342/225/250/342/225/241/342/225/250/342/224/244/342/225/244/320/234.py +82 -82
- rupython//342/225/250/320/254/342/225/250/342/225/233/342/225/250/342/224/244/342/225/244/320/223/342/225/250/342/225/227/342/225/250/342/225/225//342/225/250/320/257/342/225/250/342/225/233/342/225/244/320/222/342/225/250/342/225/233/342/225/250/342/225/221/342/225/250/342/225/225.py +121 -121
- rupython//342/225/250/320/254/342/225/250/342/225/233/342/225/250/342/224/244/342/225/244/320/223/342/225/250/342/225/227/342/225/250/342/225/225//342/225/250/320/260/342/225/250/342/225/241/342/225/250/342/224/202/342/225/250/320/242/342/225/244/320/233/342/225/244/320/220.py +42 -42
- {rupython-1.2.12.dist-info → rupython-1.2.13.dist-info}/METADATA +3 -3
- rupython-1.2.13.dist-info/RECORD +19 -0
- rupython-1.2.12.dist-info/RECORD +0 -19
- {rupython-1.2.12.dist-info → rupython-1.2.13.dist-info}/LICENSE +0 -0
- {rupython-1.2.12.dist-info → rupython-1.2.13.dist-info}/WHEEL +0 -0
- {rupython-1.2.12.dist-info → rupython-1.2.13.dist-info}/top_level.txt +0 -0
@@ -23,59 +23,59 @@ def Склонение_после_числительного(число, сло
|
|
23
23
|
)
|
24
24
|
|
25
25
|
class Куча:
|
26
|
-
def __init__(
|
27
|
-
|
28
|
-
heapq.heapify(
|
26
|
+
def __init__(экземпляр, перебираемое=None):
|
27
|
+
экземпляр._heap = list(перебираемое or [])
|
28
|
+
heapq.heapify(экземпляр._heap)
|
29
29
|
|
30
|
-
def Добавить(
|
31
|
-
heapq.heappush(
|
30
|
+
def Добавить(экземпляр, элемент):
|
31
|
+
heapq.heappush(экземпляр._heap, элемент)
|
32
32
|
|
33
|
-
def Извлечь(
|
34
|
-
if not
|
33
|
+
def Извлечь(экземпляр):
|
34
|
+
if not экземпляр._heap:
|
35
35
|
raise IndexError("Куча пуста")
|
36
|
-
return heapq.heappop(
|
36
|
+
return heapq.heappop(экземпляр._heap)
|
37
37
|
|
38
|
-
def Добавить_и_извлечь(
|
39
|
-
return heapq.heappushpop(
|
38
|
+
def Добавить_и_извлечь(экземпляр, элемент):
|
39
|
+
return heapq.heappushpop(экземпляр._heap, элемент)
|
40
40
|
|
41
|
-
def Заменить(
|
42
|
-
if not
|
41
|
+
def Заменить(экземпляр, элемент):
|
42
|
+
if not экземпляр._heap:
|
43
43
|
raise IndexError("Куча пуста")
|
44
|
-
return heapq.heapreplace(
|
44
|
+
return heapq.heapreplace(экземпляр._heap, элемент)
|
45
45
|
|
46
|
-
def Наибольшие(
|
46
|
+
def Наибольшие(экземпляр, количество, ключ=None):
|
47
47
|
kwargs = {'n': количество}
|
48
48
|
if ключ is not None:
|
49
49
|
kwargs['key'] = ключ
|
50
|
-
return heapq.nlargest(**kwargs, iterable
|
50
|
+
return heapq.nlargest(**kwargs, iterable=экземпляр._heap)
|
51
51
|
|
52
|
-
def Наименьшие(
|
52
|
+
def Наименьшие(экземпляр, количество, ключ=None):
|
53
53
|
kwargs = {'n': количество}
|
54
54
|
if ключ is not None:
|
55
55
|
kwargs['key'] = ключ
|
56
|
-
return heapq.nsmallest(**kwargs, iterable
|
56
|
+
return heapq.nsmallest(**kwargs, iterable=экземпляр._heap)
|
57
57
|
|
58
|
-
def Размер(
|
59
|
-
return len(
|
58
|
+
def Размер(экземпляр):
|
59
|
+
return len(экземпляр._heap)
|
60
60
|
|
61
|
-
def Пустая(
|
62
|
-
return len(
|
61
|
+
def Пустая(экземпляр):
|
62
|
+
return len(экземпляр._heap) == 0
|
63
63
|
|
64
|
-
def Получить_список(
|
65
|
-
return list(
|
64
|
+
def Получить_список(экземпляр):
|
65
|
+
return list(экземпляр._heap)
|
66
66
|
|
67
|
-
def __len__(
|
68
|
-
return len(
|
67
|
+
def __len__(экземпляр):
|
68
|
+
return len(экземпляр._heap)
|
69
69
|
|
70
|
-
def __iter__(
|
71
|
-
return iter(
|
70
|
+
def __iter__(экземпляр):
|
71
|
+
return iter(экземпляр._heap)
|
72
72
|
|
73
|
-
def __contains__(
|
74
|
-
return элемент in
|
73
|
+
def __contains__(экземпляр, элемент):
|
74
|
+
return элемент in экземпляр._heap
|
75
75
|
|
76
|
-
def __str__(
|
77
|
-
размер =
|
78
|
-
return f"Куча с {Склонение_после_числительного(размер, Словарь_склонений['элемент'])}: {
|
76
|
+
def __str__(экземпляр):
|
77
|
+
размер = экземпляр.Размер()
|
78
|
+
return f"Куча с {Склонение_после_числительного(размер, Словарь_склонений['элемент'])}: {экземпляр._heap}"
|
79
79
|
|
80
80
|
def Слить_кучи(*перебираемые, ключ=None):
|
81
81
|
kwargs = {}
|