Просмотр исходного кода

Modified heap.py and sorting.py

luislopez66 2 лет назад
Родитель
Сommit
b5bb1d8696
4 измененных файлов: 323 добавлений и 32 удалений
  1. 285
    15
      .vscode/PythonImportHelper-v2-Completion.json
  2. Двоичные данные
      __pycache__/heap.cpython-310.pyc
  3. 17
    17
      heap.py
  4. 21
    0
      sorting.py

+ 285
- 15
.vscode/PythonImportHelper-v2-Completion.json Просмотреть файл

38
         "kind": 2,
38
         "kind": 2,
39
         "importPath": "heap",
39
         "importPath": "heap",
40
         "description": "heap",
40
         "description": "heap",
41
-        "peekOfCode": "def heapify(lista, n, i):\n\tlargest = i # Initialize largest as root\n\tl = 2 * i + 1 # left = 2*i + 1\n\tr = 2 * i + 2 # right = 2*i + 2\n\t# See if left child of root exists and is\n\t# greater than root\n\tif l < n and lista[i] < lista[l]:\n\t\tlargest = l\n\t# See if right child of root exists and is\n\t# greater than root",
41
+        "peekOfCode": "def heapify(lista, n, i):\n\t\t# largest is root for now\n\t\tlargest = i\n\t\t# left child of root\n\t\tleft = 2 * i + 1\n\t\t# right child of root\n\t\tright = 2 * i + 2\n\t\t# Checks if root has a left child and is greater\n\t\t# than root\n\t\tif l < n and lista[i] < lista[l] :",
42
         "detail": "heap",
42
         "detail": "heap",
43
         "documentation": {}
43
         "documentation": {}
44
     },
44
     },
45
     {
45
     {
46
-        "label": "\tlargest",
46
+        "label": "\t\tlargest",
47
         "kind": 5,
47
         "kind": 5,
48
         "importPath": "heap",
48
         "importPath": "heap",
49
         "description": "heap",
49
         "description": "heap",
50
-        "peekOfCode": "\tlargest = i # Initialize largest as root\n\tl = 2 * i + 1 # left = 2*i + 1\n\tr = 2 * i + 2 # right = 2*i + 2\n\t# See if left child of root exists and is\n\t# greater than root\n\tif l < n and lista[i] < lista[l]:\n\t\tlargest = l\n\t# See if right child of root exists and is\n\t# greater than root\n\tif r < n and lista[largest] < lista[r]:",
50
+        "peekOfCode": "\t\tlargest = i\n\t\t# left child of root\n\t\tleft = 2 * i + 1\n\t\t# right child of root\n\t\tright = 2 * i + 2\n\t\t# Checks if root has a left child and is greater\n\t\t# than root\n\t\tif l < n and lista[i] < lista[l] :\n\t\t\tlargest = l\n\t\t# Checks if root has a right child and is greater",
51
         "detail": "heap",
51
         "detail": "heap",
52
         "documentation": {}
52
         "documentation": {}
53
     },
53
     },
54
     {
54
     {
55
-        "label": "\tl",
55
+        "label": "\t\tleft",
56
         "kind": 5,
56
         "kind": 5,
57
         "importPath": "heap",
57
         "importPath": "heap",
58
         "description": "heap",
58
         "description": "heap",
59
-        "peekOfCode": "\tl = 2 * i + 1 # left = 2*i + 1\n\tr = 2 * i + 2 # right = 2*i + 2\n\t# See if left child of root exists and is\n\t# greater than root\n\tif l < n and lista[i] < lista[l]:\n\t\tlargest = l\n\t# See if right child of root exists and is\n\t# greater than root\n\tif r < n and lista[largest] < lista[r]:\n\t\tlargest = r",
59
+        "peekOfCode": "\t\tleft = 2 * i + 1\n\t\t# right child of root\n\t\tright = 2 * i + 2\n\t\t# Checks if root has a left child and is greater\n\t\t# than root\n\t\tif l < n and lista[i] < lista[l] :\n\t\t\tlargest = l\n\t\t# Checks if root has a right child and is greater\n\t\t# than root\n\t\tif r < n and lista[largest] < lista[r]:",
60
         "detail": "heap",
60
         "detail": "heap",
61
         "documentation": {}
61
         "documentation": {}
62
     },
62
     },
63
     {
63
     {
64
-        "label": "\tr",
64
+        "label": "\t\tright",
65
         "kind": 5,
65
         "kind": 5,
66
         "importPath": "heap",
66
         "importPath": "heap",
67
         "description": "heap",
67
         "description": "heap",
68
-        "peekOfCode": "\tr = 2 * i + 2 # right = 2*i + 2\n\t# See if left child of root exists and is\n\t# greater than root\n\tif l < n and lista[i] < lista[l]:\n\t\tlargest = l\n\t# See if right child of root exists and is\n\t# greater than root\n\tif r < n and lista[largest] < lista[r]:\n\t\tlargest = r\n\t# Change root, if needed",
68
+        "peekOfCode": "\t\tright = 2 * i + 2\n\t\t# Checks if root has a left child and is greater\n\t\t# than root\n\t\tif l < n and lista[i] < lista[l] :\n\t\t\tlargest = l\n\t\t# Checks if root has a right child and is greater\n\t\t# than root\n\t\tif r < n and lista[largest] < lista[r]:\n\t\t\tlargest = r\n\t\t# If necessary, this changes root by swapping va-",
69
         "detail": "heap",
69
         "detail": "heap",
70
         "documentation": {}
70
         "documentation": {}
71
     },
71
     },
72
     {
72
     {
73
-        "label": "\t\tlargest",
73
+        "label": "\t\t\tlargest",
74
         "kind": 5,
74
         "kind": 5,
75
         "importPath": "heap",
75
         "importPath": "heap",
76
         "description": "heap",
76
         "description": "heap",
77
-        "peekOfCode": "\t\tlargest = l\n\t# See if right child of root exists and is\n\t# greater than root\n\tif r < n and lista[largest] < lista[r]:\n\t\tlargest = r\n\t# Change root, if needed\n\tif largest != i:\n\t\t(lista[i], lista[largest]) = (lista[largest], lista[i]) # swap\n\t\t# Heapify the root.\n\t\theapify(lista, n, largest)",
77
+        "peekOfCode": "\t\t\tlargest = l\n\t\t# Checks if root has a right child and is greater\n\t\t# than root\n\t\tif r < n and lista[largest] < lista[r]:\n\t\t\tlargest = r\n\t\t# If necessary, this changes root by swapping va-\n\t\t# lues\n\t\tlista[i], lista[largest] = lista[largest], lista[i]\n\t\theapify(lista, n, largest)",
78
         "detail": "heap",
78
         "detail": "heap",
79
         "documentation": {}
79
         "documentation": {}
80
     },
80
     },
81
     {
81
     {
82
-        "label": "\t\tlargest",
82
+        "label": "\t\t\tlargest",
83
         "kind": 5,
83
         "kind": 5,
84
         "importPath": "heap",
84
         "importPath": "heap",
85
         "description": "heap",
85
         "description": "heap",
86
-        "peekOfCode": "\t\tlargest = r\n\t# Change root, if needed\n\tif largest != i:\n\t\t(lista[i], lista[largest]) = (lista[largest], lista[i]) # swap\n\t\t# Heapify the root.\n\t\theapify(lista, n, largest)",
86
+        "peekOfCode": "\t\t\tlargest = r\n\t\t# If necessary, this changes root by swapping va-\n\t\t# lues\n\t\tlista[i], lista[largest] = lista[largest], lista[i]\n\t\theapify(lista, n, largest)",
87
         "detail": "heap",
87
         "detail": "heap",
88
         "documentation": {}
88
         "documentation": {}
89
     },
89
     },
90
     {
90
     {
91
+        "label": "heapify",
92
+        "kind": 2,
93
+        "importPath": "heap_BACKUP_341",
94
+        "description": "heap_BACKUP_341",
95
+        "peekOfCode": "def heapify(lista, n, i):\n<<<<<<< HEAD\n\tlargest = i # Initialize largest as root\n\tl = 2 * i + 1 # left = 2*i + 1\n\tr = 2 * i + 2 # right = 2*i + 2\n\t# See if left child of root exists and is\n\t# greater than root\n\tif l < n and lista[i] < lista[l]:\n\t\tlargest = l\n\t# See if right child of root exists and is",
96
+        "detail": "heap_BACKUP_341",
97
+        "documentation": {}
98
+    },
99
+    {
100
+        "label": "\tlargest",
101
+        "kind": 5,
102
+        "importPath": "heap_BACKUP_341",
103
+        "description": "heap_BACKUP_341",
104
+        "peekOfCode": "\tlargest = i # Initialize largest as root\n\tl = 2 * i + 1 # left = 2*i + 1\n\tr = 2 * i + 2 # right = 2*i + 2\n\t# See if left child of root exists and is\n\t# greater than root\n\tif l < n and lista[i] < lista[l]:\n\t\tlargest = l\n\t# See if right child of root exists and is\n\t# greater than root\n\tif r < n and lista[largest] < lista[r]:",
105
+        "detail": "heap_BACKUP_341",
106
+        "documentation": {}
107
+    },
108
+    {
109
+        "label": "\tl",
110
+        "kind": 5,
111
+        "importPath": "heap_BACKUP_341",
112
+        "description": "heap_BACKUP_341",
113
+        "peekOfCode": "\tl = 2 * i + 1 # left = 2*i + 1\n\tr = 2 * i + 2 # right = 2*i + 2\n\t# See if left child of root exists and is\n\t# greater than root\n\tif l < n and lista[i] < lista[l]:\n\t\tlargest = l\n\t# See if right child of root exists and is\n\t# greater than root\n\tif r < n and lista[largest] < lista[r]:\n\t\tlargest = r",
114
+        "detail": "heap_BACKUP_341",
115
+        "documentation": {}
116
+    },
117
+    {
118
+        "label": "\tr",
119
+        "kind": 5,
120
+        "importPath": "heap_BACKUP_341",
121
+        "description": "heap_BACKUP_341",
122
+        "peekOfCode": "\tr = 2 * i + 2 # right = 2*i + 2\n\t# See if left child of root exists and is\n\t# greater than root\n\tif l < n and lista[i] < lista[l]:\n\t\tlargest = l\n\t# See if right child of root exists and is\n\t# greater than root\n\tif r < n and lista[largest] < lista[r]:\n\t\tlargest = r\n\t# Change root, if needed",
123
+        "detail": "heap_BACKUP_341",
124
+        "documentation": {}
125
+    },
126
+    {
127
+        "label": "\t\tlargest",
128
+        "kind": 5,
129
+        "importPath": "heap_BACKUP_341",
130
+        "description": "heap_BACKUP_341",
131
+        "peekOfCode": "\t\tlargest = l\n\t# See if right child of root exists and is\n\t# greater than root\n\tif r < n and lista[largest] < lista[r]:\n\t\tlargest = r\n\t# Change root, if needed\n=======\n\t# largest is root for now\n\tlargest = i\n\t# left child of root",
132
+        "detail": "heap_BACKUP_341",
133
+        "documentation": {}
134
+    },
135
+    {
136
+        "label": "\t\tlargest",
137
+        "kind": 5,
138
+        "importPath": "heap_BACKUP_341",
139
+        "description": "heap_BACKUP_341",
140
+        "peekOfCode": "\t\tlargest = r\n\t# Change root, if needed\n=======\n\t# largest is root for now\n\tlargest = i\n\t# left child of root\n\tl = 2 * i + 1\n\t# right child of root\n\tr = 2 * i + 2\n\t# Checks if root has a left child and is greater",
141
+        "detail": "heap_BACKUP_341",
142
+        "documentation": {}
143
+    },
144
+    {
145
+        "label": "\tlargest",
146
+        "kind": 5,
147
+        "importPath": "heap_BACKUP_341",
148
+        "description": "heap_BACKUP_341",
149
+        "peekOfCode": "\tlargest = i\n\t# left child of root\n\tl = 2 * i + 1\n\t# right child of root\n\tr = 2 * i + 2\n\t# Checks if root has a left child and is greater\n\t# than root\n\tif l < n and lista[i] < lista[l] :\n\t\tlargest = l\n\t# Checks if root has a right child and is greater",
150
+        "detail": "heap_BACKUP_341",
151
+        "documentation": {}
152
+    },
153
+    {
154
+        "label": "\tl",
155
+        "kind": 5,
156
+        "importPath": "heap_BACKUP_341",
157
+        "description": "heap_BACKUP_341",
158
+        "peekOfCode": "\tl = 2 * i + 1\n\t# right child of root\n\tr = 2 * i + 2\n\t# Checks if root has a left child and is greater\n\t# than root\n\tif l < n and lista[i] < lista[l] :\n\t\tlargest = l\n\t# Checks if root has a right child and is greater\n\t# than root\n\tif r < n and lista[largest] < lista[r]:",
159
+        "detail": "heap_BACKUP_341",
160
+        "documentation": {}
161
+    },
162
+    {
163
+        "label": "\tr",
164
+        "kind": 5,
165
+        "importPath": "heap_BACKUP_341",
166
+        "description": "heap_BACKUP_341",
167
+        "peekOfCode": "\tr = 2 * i + 2\n\t# Checks if root has a left child and is greater\n\t# than root\n\tif l < n and lista[i] < lista[l] :\n\t\tlargest = l\n\t# Checks if root has a right child and is greater\n\t# than root\n\tif r < n and lista[largest] < lista[r]:\n\t\tlargest = r\n\t# If necessary, this changes root by swapping va-",
168
+        "detail": "heap_BACKUP_341",
169
+        "documentation": {}
170
+    },
171
+    {
172
+        "label": "\t\tlargest",
173
+        "kind": 5,
174
+        "importPath": "heap_BACKUP_341",
175
+        "description": "heap_BACKUP_341",
176
+        "peekOfCode": "\t\tlargest = l\n\t# Checks if root has a right child and is greater\n\t# than root\n\tif r < n and lista[largest] < lista[r]:\n\t\tlargest = r\n\t# If necessary, this changes root by swapping va-\n\t# lues\n\t\tlista[i], lista[largest] = lista[largest], lista[i]\n>>>>>>> sortingHeap\n\tif largest != i:",
177
+        "detail": "heap_BACKUP_341",
178
+        "documentation": {}
179
+    },
180
+    {
181
+        "label": "\t\tlargest",
182
+        "kind": 5,
183
+        "importPath": "heap_BACKUP_341",
184
+        "description": "heap_BACKUP_341",
185
+        "peekOfCode": "\t\tlargest = r\n\t# If necessary, this changes root by swapping va-\n\t# lues\n\t\tlista[i], lista[largest] = lista[largest], lista[i]\n>>>>>>> sortingHeap\n\tif largest != i:\n\t\t(lista[i], lista[largest]) = (lista[largest], lista[i]) # swap\n\t\t# Heapify the root.\n\t\theapify(lista, n, largest)",
186
+        "detail": "heap_BACKUP_341",
187
+        "documentation": {}
188
+    },
189
+    {
190
+        "label": "heapify",
191
+        "kind": 2,
192
+        "importPath": "heap_BASE_341",
193
+        "description": "heap_BASE_341",
194
+        "peekOfCode": "def heapify(lista, n, i):\n\t\t# largest is root for now\n\t\tlargest = i\n\t\t# left child of root\n\t\tleft = 2 * i + 1\n\t\t# right child of root\n\t\tright = 2 * i + 2\n\t\t# Checks if root has a left child and is greater\n\t\t# than root\n\t\tif l < n and lista[i] < lista[l] :",
195
+        "detail": "heap_BASE_341",
196
+        "documentation": {}
197
+    },
198
+    {
199
+        "label": "\t\tlargest",
200
+        "kind": 5,
201
+        "importPath": "heap_BASE_341",
202
+        "description": "heap_BASE_341",
203
+        "peekOfCode": "\t\tlargest = i\n\t\t# left child of root\n\t\tleft = 2 * i + 1\n\t\t# right child of root\n\t\tright = 2 * i + 2\n\t\t# Checks if root has a left child and is greater\n\t\t# than root\n\t\tif l < n and lista[i] < lista[l] :\n\t\t\tlargest = l\n\t\t# Checks if root has a right child and is greater",
204
+        "detail": "heap_BASE_341",
205
+        "documentation": {}
206
+    },
207
+    {
208
+        "label": "\t\tleft",
209
+        "kind": 5,
210
+        "importPath": "heap_BASE_341",
211
+        "description": "heap_BASE_341",
212
+        "peekOfCode": "\t\tleft = 2 * i + 1\n\t\t# right child of root\n\t\tright = 2 * i + 2\n\t\t# Checks if root has a left child and is greater\n\t\t# than root\n\t\tif l < n and lista[i] < lista[l] :\n\t\t\tlargest = l\n\t\t# Checks if root has a right child and is greater\n\t\t# than root\n\t\tif r < n and lista[largest] < lista[r]:",
213
+        "detail": "heap_BASE_341",
214
+        "documentation": {}
215
+    },
216
+    {
217
+        "label": "\t\tright",
218
+        "kind": 5,
219
+        "importPath": "heap_BASE_341",
220
+        "description": "heap_BASE_341",
221
+        "peekOfCode": "\t\tright = 2 * i + 2\n\t\t# Checks if root has a left child and is greater\n\t\t# than root\n\t\tif l < n and lista[i] < lista[l] :\n\t\t\tlargest = l\n\t\t# Checks if root has a right child and is greater\n\t\t# than root\n\t\tif r < n and lista[largest] < lista[r]:\n\t\t\tlargest = r\n\t\t# If necessary, this changes root by swapping va-",
222
+        "detail": "heap_BASE_341",
223
+        "documentation": {}
224
+    },
225
+    {
226
+        "label": "\t\t\tlargest",
227
+        "kind": 5,
228
+        "importPath": "heap_BASE_341",
229
+        "description": "heap_BASE_341",
230
+        "peekOfCode": "\t\t\tlargest = l\n\t\t# Checks if root has a right child and is greater\n\t\t# than root\n\t\tif r < n and lista[largest] < lista[r]:\n\t\t\tlargest = r\n\t\t# If necessary, this changes root by swapping va-\n\t\t# lues\n\t\tlista[i], lista[largest] = lista[largest], lista[i]\n\t\t# This heapifies the root repeatedly\n\t\theapify(lista, n, largest)",
231
+        "detail": "heap_BASE_341",
232
+        "documentation": {}
233
+    },
234
+    {
235
+        "label": "\t\t\tlargest",
236
+        "kind": 5,
237
+        "importPath": "heap_BASE_341",
238
+        "description": "heap_BASE_341",
239
+        "peekOfCode": "\t\t\tlargest = r\n\t\t# If necessary, this changes root by swapping va-\n\t\t# lues\n\t\tlista[i], lista[largest] = lista[largest], lista[i]\n\t\t# This heapifies the root repeatedly\n\t\theapify(lista, n, largest)",
240
+        "detail": "heap_BASE_341",
241
+        "documentation": {}
242
+    },
243
+    {
244
+        "label": "heapify",
245
+        "kind": 2,
246
+        "importPath": "heap_LOCAL_341",
247
+        "description": "heap_LOCAL_341",
248
+        "peekOfCode": "def heapify(lista, n, i):\n\tlargest = i # Initialize largest as root\n\tl = 2 * i + 1 # left = 2*i + 1\n\tr = 2 * i + 2 # right = 2*i + 2\n\t# See if left child of root exists and is\n\t# greater than root\n\tif l < n and lista[i] < lista[l]:\n\t\tlargest = l\n\t# See if right child of root exists and is\n\t# greater than root",
249
+        "detail": "heap_LOCAL_341",
250
+        "documentation": {}
251
+    },
252
+    {
253
+        "label": "\tlargest",
254
+        "kind": 5,
255
+        "importPath": "heap_LOCAL_341",
256
+        "description": "heap_LOCAL_341",
257
+        "peekOfCode": "\tlargest = i # Initialize largest as root\n\tl = 2 * i + 1 # left = 2*i + 1\n\tr = 2 * i + 2 # right = 2*i + 2\n\t# See if left child of root exists and is\n\t# greater than root\n\tif l < n and lista[i] < lista[l]:\n\t\tlargest = l\n\t# See if right child of root exists and is\n\t# greater than root\n\tif r < n and lista[largest] < lista[r]:",
258
+        "detail": "heap_LOCAL_341",
259
+        "documentation": {}
260
+    },
261
+    {
262
+        "label": "\tl",
263
+        "kind": 5,
264
+        "importPath": "heap_LOCAL_341",
265
+        "description": "heap_LOCAL_341",
266
+        "peekOfCode": "\tl = 2 * i + 1 # left = 2*i + 1\n\tr = 2 * i + 2 # right = 2*i + 2\n\t# See if left child of root exists and is\n\t# greater than root\n\tif l < n and lista[i] < lista[l]:\n\t\tlargest = l\n\t# See if right child of root exists and is\n\t# greater than root\n\tif r < n and lista[largest] < lista[r]:\n\t\tlargest = r",
267
+        "detail": "heap_LOCAL_341",
268
+        "documentation": {}
269
+    },
270
+    {
271
+        "label": "\tr",
272
+        "kind": 5,
273
+        "importPath": "heap_LOCAL_341",
274
+        "description": "heap_LOCAL_341",
275
+        "peekOfCode": "\tr = 2 * i + 2 # right = 2*i + 2\n\t# See if left child of root exists and is\n\t# greater than root\n\tif l < n and lista[i] < lista[l]:\n\t\tlargest = l\n\t# See if right child of root exists and is\n\t# greater than root\n\tif r < n and lista[largest] < lista[r]:\n\t\tlargest = r\n\t# Change root, if needed",
276
+        "detail": "heap_LOCAL_341",
277
+        "documentation": {}
278
+    },
279
+    {
280
+        "label": "\t\tlargest",
281
+        "kind": 5,
282
+        "importPath": "heap_LOCAL_341",
283
+        "description": "heap_LOCAL_341",
284
+        "peekOfCode": "\t\tlargest = l\n\t# See if right child of root exists and is\n\t# greater than root\n\tif r < n and lista[largest] < lista[r]:\n\t\tlargest = r\n\t# Change root, if needed\n\tif largest != i:\n\t\t(lista[i], lista[largest]) = (lista[largest], lista[i]) # swap\n\t\t# Heapify the root.\n\t\theapify(lista, n, largest)",
285
+        "detail": "heap_LOCAL_341",
286
+        "documentation": {}
287
+    },
288
+    {
289
+        "label": "\t\tlargest",
290
+        "kind": 5,
291
+        "importPath": "heap_LOCAL_341",
292
+        "description": "heap_LOCAL_341",
293
+        "peekOfCode": "\t\tlargest = r\n\t# Change root, if needed\n\tif largest != i:\n\t\t(lista[i], lista[largest]) = (lista[largest], lista[i]) # swap\n\t\t# Heapify the root.\n\t\theapify(lista, n, largest)",
294
+        "detail": "heap_LOCAL_341",
295
+        "documentation": {}
296
+    },
297
+    {
298
+        "label": "heapify",
299
+        "kind": 2,
300
+        "importPath": "heap_REMOTE_341",
301
+        "description": "heap_REMOTE_341",
302
+        "peekOfCode": "def heapify(lista, n, i):\n\t# largest is root for now\n\tlargest = i\n\t# left child of root\n\tl = 2 * i + 1\n\t# right child of root\n\tr = 2 * i + 2\n\t# Checks if root has a left child and is greater\n\t# than root\n\tif l < n and lista[i] < lista[l] :",
303
+        "detail": "heap_REMOTE_341",
304
+        "documentation": {}
305
+    },
306
+    {
307
+        "label": "\tlargest",
308
+        "kind": 5,
309
+        "importPath": "heap_REMOTE_341",
310
+        "description": "heap_REMOTE_341",
311
+        "peekOfCode": "\tlargest = i\n\t# left child of root\n\tl = 2 * i + 1\n\t# right child of root\n\tr = 2 * i + 2\n\t# Checks if root has a left child and is greater\n\t# than root\n\tif l < n and lista[i] < lista[l] :\n\t\tlargest = l\n\t# Checks if root has a right child and is greater",
312
+        "detail": "heap_REMOTE_341",
313
+        "documentation": {}
314
+    },
315
+    {
316
+        "label": "\tl",
317
+        "kind": 5,
318
+        "importPath": "heap_REMOTE_341",
319
+        "description": "heap_REMOTE_341",
320
+        "peekOfCode": "\tl = 2 * i + 1\n\t# right child of root\n\tr = 2 * i + 2\n\t# Checks if root has a left child and is greater\n\t# than root\n\tif l < n and lista[i] < lista[l] :\n\t\tlargest = l\n\t# Checks if root has a right child and is greater\n\t# than root\n\tif r < n and lista[largest] < lista[r]:",
321
+        "detail": "heap_REMOTE_341",
322
+        "documentation": {}
323
+    },
324
+    {
325
+        "label": "\tr",
326
+        "kind": 5,
327
+        "importPath": "heap_REMOTE_341",
328
+        "description": "heap_REMOTE_341",
329
+        "peekOfCode": "\tr = 2 * i + 2\n\t# Checks if root has a left child and is greater\n\t# than root\n\tif l < n and lista[i] < lista[l] :\n\t\tlargest = l\n\t# Checks if root has a right child and is greater\n\t# than root\n\tif r < n and lista[largest] < lista[r]:\n\t\tlargest = r\n\t# If necessary, this changes root by swapping va-",
330
+        "detail": "heap_REMOTE_341",
331
+        "documentation": {}
332
+    },
333
+    {
334
+        "label": "\t\tlargest",
335
+        "kind": 5,
336
+        "importPath": "heap_REMOTE_341",
337
+        "description": "heap_REMOTE_341",
338
+        "peekOfCode": "\t\tlargest = l\n\t# Checks if root has a right child and is greater\n\t# than root\n\tif r < n and lista[largest] < lista[r]:\n\t\tlargest = r\n\t# If necessary, this changes root by swapping va-\n\t# lues\n\t\tlista[i], lista[largest] = lista[largest], lista[i]\n\t\t# This heapifies the root repeatedly\n\t\theapify(lista, n, largest)",
339
+        "detail": "heap_REMOTE_341",
340
+        "documentation": {}
341
+    },
342
+    {
343
+        "label": "\t\tlargest",
344
+        "kind": 5,
345
+        "importPath": "heap_REMOTE_341",
346
+        "description": "heap_REMOTE_341",
347
+        "peekOfCode": "\t\tlargest = r\n\t# If necessary, this changes root by swapping va-\n\t# lues\n\t\tlista[i], lista[largest] = lista[largest], lista[i]\n\t\t# This heapifies the root repeatedly\n\t\theapify(lista, n, largest)",
348
+        "detail": "heap_REMOTE_341",
349
+        "documentation": {}
350
+    },
351
+    {
91
         "label": "merge",
352
         "label": "merge",
92
         "kind": 2,
353
         "kind": 2,
93
         "importPath": "merge",
354
         "importPath": "merge",
218
         "kind": 2,
479
         "kind": 2,
219
         "importPath": "sorting",
480
         "importPath": "sorting",
220
         "description": "sorting",
481
         "description": "sorting",
221
-        "peekOfCode": "def mergeSort(lista, l, r):\n\tif l < r:\n      # Same as (l+r)//2, but avoids overflow for\n      # large l and h\n\t\tm = l+(r-l)//2\n      # Sort first and second halves\n\t\tmergeSort(lista, l, m)\n\t\tmergeSort(lista, m+1, r)\n\t\tmerge(lista, l, m, r)\n''' Luis Andrés López Mañán",
482
+        "peekOfCode": "def mergeSort(lista, l, r):\n<<<<<<< HEAD\n\tif l < r:\n      # Same as (l+r)//2, but avoids overflow for\n      # large l and h\n\t\tm = l+(r-l)//2\n      # Sort first and second halves\n\t\tmergeSort(lista, l, m)\n\t\tmergeSort(lista, m+1, r)\n\t\tmerge(lista, l, m, r)",
222
         "detail": "sorting",
483
         "detail": "sorting",
223
         "documentation": {}
484
         "documentation": {}
224
     },
485
     },
263
         "kind": 5,
524
         "kind": 5,
264
         "importPath": "sorting",
525
         "importPath": "sorting",
265
         "description": "sorting",
526
         "description": "sorting",
266
-        "peekOfCode": "\tn = len(lista)\n\theap.heapify(lista,n,0)\n\t''' Se crea un heap máximo y el último padre estará en\n\t\tla posición h1, i.e., la mitad del tamaño de la lista.\n\t\tPor lo tanto, ese sería el comienzo. \n\t'''\n\th1 = (n // 2) - 1\n\tfor i in range(h1, -1, -1):\n\t\theap.heapify(lista, n, i)\n\t# Se extrae los elementos uno a uno",
527
+        "peekOfCode": "\tn = len(lista)\n\theap.heapify(lista,n,0)\n\t''' Se crea un heap máximo y el último padre estará en\n\t\tla posición h1, i.e., la mitad del tamaño de la lista.\n\t\tPor lo tanto, ese sería el comienzo. \n\t'''\n\th1 = (n // 2) - 1\n\tfor i in range(h1, -1, -1):\n\t\theap.heapify(lista, n, i)\n<<<<<<< HEAD",
267
         "detail": "sorting",
528
         "detail": "sorting",
268
         "documentation": {}
529
         "documentation": {}
269
     },
530
     },
272
         "kind": 5,
533
         "kind": 5,
273
         "importPath": "sorting",
534
         "importPath": "sorting",
274
         "description": "sorting",
535
         "description": "sorting",
275
-        "peekOfCode": "\th1 = (n // 2) - 1\n\tfor i in range(h1, -1, -1):\n\t\theap.heapify(lista, n, i)\n\t# Se extrae los elementos uno a uno\n\th2 = n - 1\n\tfor i in range(h2, 0, -1):\n\t\t# Se intercambia, luego se hace heapify\n\t\tlista[i], lista[0] = lista[0], lista[i]\n\t\theap.heapify(lista, 0, i)\n\treturn lista",
536
+        "peekOfCode": "\th1 = (n // 2) - 1\n\tfor i in range(h1, -1, -1):\n\t\theap.heapify(lista, n, i)\n<<<<<<< HEAD\n\t# Se extrae los elementos uno a uno\n\th2 = n - 1\n\tfor i in range(h2, 0, -1):\n\t\t# Se intercambia, luego se hace heapify\n\t\tlista[i], lista[0] = lista[0], lista[i]\n\t\theap.heapify(lista, 0, i)",
537
+        "detail": "sorting",
538
+        "documentation": {}
539
+    },
540
+    {
541
+        "label": "\th2",
542
+        "kind": 5,
543
+        "importPath": "sorting",
544
+        "description": "sorting",
545
+        "peekOfCode": "\th2 = n - 1\n\tfor i in range(h2, 0, -1):\n\t\t# Se intercambia, luego se hace heapify\n\t\tlista[i], lista[0] = lista[0], lista[i]\n\t\theap.heapify(lista, 0, i)\n=======\n\th2 = n - 1\n\tfor i in range(h2, 0, -1):\n\t\tlista[i], lista[0] = lista[0], lista[i]\n\t\theap.heapify(lista, 0, i)",
276
         "detail": "sorting",
546
         "detail": "sorting",
277
         "documentation": {}
547
         "documentation": {}
278
     },
548
     },
281
         "kind": 5,
551
         "kind": 5,
282
         "importPath": "sorting",
552
         "importPath": "sorting",
283
         "description": "sorting",
553
         "description": "sorting",
284
-        "peekOfCode": "\th2 = n - 1\n\tfor i in range(h2, 0, -1):\n\t\t# Se intercambia, luego se hace heapify\n\t\tlista[i], lista[0] = lista[0], lista[i]\n\t\theap.heapify(lista, 0, i)\n\treturn lista\ndef quickSort(lista):\n\t# definan el algoritmo de ordenamiento quicksort\n\telements = len(lista)\n    # Base case",
554
+        "peekOfCode": "\th2 = n - 1\n\tfor i in range(h2, 0, -1):\n\t\tlista[i], lista[0] = lista[0], lista[i]\n\t\theap.heapify(lista, 0, i)\n>>>>>>> sortingHeap\n\treturn lista\ndef quickSort(lista):\n\t# definan el algoritmo de ordenamiento quicksort\n\telements = len(lista)\n    # Base case",
285
         "detail": "sorting",
555
         "detail": "sorting",
286
         "documentation": {}
556
         "documentation": {}
287
     },
557
     },

Двоичные данные
__pycache__/heap.cpython-310.pyc Просмотреть файл


+ 17
- 17
heap.py Просмотреть файл

12
 # i. Also, n is the size of a heap and arr is array.
12
 # i. Also, n is the size of a heap and arr is array.
13
 
13
 
14
 def heapify(lista, n, i):
14
 def heapify(lista, n, i):
15
-	largest = i # Initialize largest as root
16
-	l = 2 * i + 1 # left = 2*i + 1
17
-	r = 2 * i + 2 # right = 2*i + 2
15
+		# largest is root for now
16
+		largest = i
18
 
17
 
19
-	# See if left child of root exists and is
20
-	# greater than root
18
+		# left child of root
19
+		left = 2 * i + 1
21
 
20
 
22
-	if l < n and lista[i] < lista[l]:
23
-		largest = l
21
+		# right child of root
22
+		right = 2 * i + 2
24
 
23
 
25
-	# See if right child of root exists and is
26
-	# greater than root
24
+		# Checks if root has a left child and is greater
25
+		# than root
26
+		if l < n and lista[i] < lista[l] :
27
+			largest = l
27
 
28
 
28
-	if r < n and lista[largest] < lista[r]:
29
-		largest = r
29
+		# Checks if root has a right child and is greater
30
+		# than root
31
+		if r < n and lista[largest] < lista[r]:
32
+			largest = r
30
 
33
 
31
-	# Change root, if needed
32
-
33
-	if largest != i:
34
-		(lista[i], lista[largest]) = (lista[largest], lista[i]) # swap
35
-
36
-		# Heapify the root.
34
+		# If necessary, this changes root by swapping va-
35
+		# lues
36
+		lista[i], lista[largest] = lista[largest], lista[i]
37
 
37
 
38
 		heapify(lista, n, largest)
38
 		heapify(lista, n, largest)

+ 21
- 0
sorting.py Просмотреть файл

6
 La variable veces define las veces que se va a hacer el ordenamiento
6
 La variable veces define las veces que se va a hacer el ordenamiento
7
 La variable veces define las veces que se va a hacer el ordenamiento
7
 La variable veces define las veces que se va a hacer el ordenamiento
8
 Al final se imprimen los promedios de cada algortimo
8
 Al final se imprimen los promedios de cada algortimo
9
+<<<<<<< HEAD
9
 '''
10
 '''
10
 
11
 
12
+=======
13
+"""
14
+>>>>>>> sortingHeap
11
 import time
15
 import time
12
 from random import randint
16
 from random import randint
13
 
17
 
14
 import heap
18
 import heap
19
+<<<<<<< HEAD
15
 from merge import merge
20
 from merge import merge
21
+=======
22
+>>>>>>> sortingHeap
16
 
23
 
17
 # Python program for implementation of MergeSort
24
 # Python program for implementation of MergeSort
18
 
25
 
21
 # Second subarray is arr[m+1..r]
28
 # Second subarray is arr[m+1..r]
22
 
29
 
23
 def mergeSort(lista, l, r):
30
 def mergeSort(lista, l, r):
31
+<<<<<<< HEAD
24
 	if l < r:
32
 	if l < r:
25
       # Same as (l+r)//2, but avoids overflow for
33
       # Same as (l+r)//2, but avoids overflow for
26
       # large l and h
34
       # large l and h
39
 '''
47
 '''
40
 
48
 
41
 # Python program for implementation of heap Sort (Part II)
49
 # Python program for implementation of heap Sort (Part II)
50
+=======
51
+	# definan el algoritmo de ordenamiento mergesort
52
+	return lista
53
+>>>>>>> sortingHeap
42
 
54
 
43
 def heapSort(lista):
55
 def heapSort(lista):
44
 	# Se busca el tamaño de la lista
56
 	# Se busca el tamaño de la lista
52
 	h1 = (n // 2) - 1
64
 	h1 = (n // 2) - 1
53
 	for i in range(h1, -1, -1):
65
 	for i in range(h1, -1, -1):
54
 		heap.heapify(lista, n, i)
66
 		heap.heapify(lista, n, i)
67
+<<<<<<< HEAD
55
   
68
   
56
 	# Se extrae los elementos uno a uno
69
 	# Se extrae los elementos uno a uno
57
 	h2 = n - 1
70
 	h2 = n - 1
60
 		lista[i], lista[0] = lista[0], lista[i]
73
 		lista[i], lista[0] = lista[0], lista[i]
61
 		heap.heapify(lista, 0, i)
74
 		heap.heapify(lista, 0, i)
62
   
75
   
76
+=======
77
+
78
+	h2 = n - 1
79
+	for i in range(h2, 0, -1):
80
+		lista[i], lista[0] = lista[0], lista[i]
81
+		heap.heapify(lista, 0, i)
82
+
83
+>>>>>>> sortingHeap
63
 	return lista
84
 	return lista
64
 
85
 
65
 def quickSort(lista):
86
 def quickSort(lista):