J'essaie de créer un tableau de 7 nombres générés aléatoirement, puis de trier ces nombres du plus petit au plus élevé en utilisant la méthode de tri d'insertion. J'ai regardé à travers plusieurs sujets précédemment répondus car c'est une question très commune mais chaque utilisateur a un code très différent à moi qui me fait me demander où je vais mal.Indice de liste d'erreurs d'insertion par insertion
import random # importing the random module
arrayInsertion = []
for i in range (7): # 7 different numbers
arrayInsertion.append(random.randint (1,10))
for i in range (1,7):
while i > 0 and arrayInsertion [i+1] > arrayInsertion [i]:
arrayInsertion [i] = arrayInsertion [i-1]
i = i - 1
print (arrayInsertion)
Lors de l'exécution de ce code, je reçois le message d'erreur suivant:
Traceback (most recent call last): File "C:\Users\Ben\Desktop\insertion sort.py", line 8, in while i > 0 and arrayInsertion [i+1] > arrayInsertion [i]: IndexError: list index out of range
Utilisez-vous 'i + 1' quand vous voulez utiliser' i-1'? – Blckknght