/ / trier une liste sans fonction triée - python

tri d'une liste sans fonction triée - python

             a=[12,11,13,21,1,2,3,45,65]
i=0
j=1
k=0
newarr=[]
while(len(a)>=k):
if (a[i]>a[j]):
a[i],a[j]=a[j],a[i]
i=i+1
j=j+1

k=k+1

imprimer (a)

Je ne reçois pas la sortie prévue. Quelqu'un peut-il identifier?

Réponses:

0 pour la réponse № 1

Vous implémentez l'algorithme de manière incorrecte. Eh bien, je pense que vous devriez apprendre différents algorithmes de tri à trier et lister en python ou en tableau dans d’autres langages.

Ex: Bubble Sort ... Le plus facile à apprendre.

listing=[12,34,5,33,89,3]
for i in range(0,len(listing)-1):
for j in range(0,len(listing)-i-1):
if listing[j]>listing[j+1]:
temp=listing[j]
listing[j]=listing[j+1]
listing[j+1]=temp
print(listing)

Et encore une chose à mentionner. Que la fonction list.sort () utilise également un algorithme stable pour trier. Lire ici Quel algorithme de tri est utilisé par list :: sort () de STL?