Ceci est mon code pour le tri du seau en Python.Que fait cette implémentation de tri de seau?
from random import randrange
def insertion_sort(aList):
for i in range(1, len(aList)):
for j in range(i, 0, -1):
if aList[j] < aList[j-1]:
aList[j], aList[j-1] = aList[j-1], aList[j]
return aList
def bucket_sort(aList):
buckets = [[]] * len(aList)
for index, value in enumerate(aList):
buckets_index = value * len(aList) // (max(aList) + 1)
buckets[buckets_index].append(value)
answer = []
for bucket in buckets:
answer.extend(insertion_sort(bucket))
# answer += insertion_sort(bucket)
print(buckets[0])
print("\n")
# return answer
aList = [randrange(10) for _ in range(100)]
print(aList)
print("\n")
answer = bucket_sort(aList)
#print(answer)
Que se passe-t-il? Lorsque je lance le code, je trouve toujours que la première liste dans les compartiments est déjà triée et les autres listes dans les compartiments sont toutes des copies de celle-ci. Ai-je besoin du tri d'insertion pour chaque liste? Que devrais-je utiliser la variable "réponse" pour ?! Je me fie principalement à this visualization.
question ne sait pas .. quelle est votre exigence –
serait utile pour un utilisateur non seau pour voir comment l'importer et ce seau est en réalité. – Torxed
Je pense que je sais quel est votre problème, mais ce serait bien si vous pouviez montrer une sortie, et ce que vous attendez de la sortie. – ymbirtt