Buenas, hace unos días acabo de empezar a estudiar pitón, pero no me quedó claro el tema de asignación, les explico:
En las ultimas líneas llamo a la función quicksort ingresando una
lista_aleatoria de parámetro, pero cuando termina de ejecutarse el método de ordenamiento, me encuentro que la
lista_aleatoria fue ordenada sin q se lo especificara, como le hago para evitar esto? Puesto q necesito de esta misma lista para usarlo en otros métodos de ordenamiento.
import random
lista_aleatoria = [ ]
longitud = 100
def quicksort(datos, primero, ultimo):
i = primero
j = ultimo
pivote = (datos[primero] + datos[ultimo]) / 2
while i < j:
while datos[i] < pivote: i+=1
while datos[j] > pivote: j-=1
if i <= j:
aux = datos[i]
datos[i] = datos[j]
datos[j] = aux
i+=1
j-=1
if primero < j: datos = quicksort(datos, primero, j)
if ultimo > i: datos = quicksort(datos, i, ultimo)
return datos
for i in range(longitud-1):
j = longitud - i
lista_aleatoria.append(random.randint(1, 100))
quicksort(lista_aleatoria,0,len(lista_aleatoria)-1)
for i in range(longitud-1):
print(lista_aleatoria[i])