[ Foro de Python ]

Ordenamiento RadixSort en python de forma descendente

20-Nov-2021 03:11
Invitado (Diego MTZ)
0 Respuestas

import time
import random
def radix(A):
   n=len(A)
   m=max(A)
   digitos=len(str(m))
   l=[]
   bins=[l]*10
   for i in range (digitos):
       for j in range (n):
           e=int((A[j]/pow(10,i))%10)
           if len(bins[e])>0:
               bins[e].append(A[j])
           else:
               bins[e]=[A[j]]
       k=0
       for x in range(10):
           if len(bins[x])>0:
               for y in range (0,len(bins[x])):
                   A[k]=bins[x].pop(0)
                   k=k+1
                   k.sort
                   print(k)
   return A
A=[]
for x in range (0,10):
  A.append(random.randint(0,20000))
print(A)
inicio=time.time()
print("**************************Ordenamiento radix**************************")
print(radix(A))
fin=time.time()
print("El tiempo de ejecucion es: {}".format(fin-inicio))


Ese es mi codigo pero no logro hacer que se ordene de forma descendente, ayuda porfavor




Si ya eres usuario del sistema, puedes contestar desde tu cuenta y así ganar prestigio.

Si sólo eres un visitante, puedes optar por...