Algoritmia - QuickSort NO recursivo?

 
Vista:

QuickSort NO recursivo?

Publicado por M@rceloL (4 intervenciones) el 03/11/2004 03:43:08
Buenas. ¿Alguien sabe dónde puedo encontrar (si existe) el métido de ordenamiento QuickSort pero implementado de forma no recursiva?

Gracias de antemano.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:QuickSort NO recursivo?

Publicado por Carlos Steven martinez (1 intervención) el 10/11/2006 15:14:28
marica no lo encontramos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:QuickSort NO recursivo?

Publicado por tu padre (1 intervención) el 29/10/2009 21:51:31
01.#Algoritmo escrito por Melina Vidoni 02.#Forma no recursiva 03. 04.class Pila () : 05. inferior=0 06. superior=0 07. 08.def quicksortNoRec (lista) : 09. """Ordena la lista siguiendo el algoritmo quicksort 10. o de ordenación rapida. Forma no recursiva""" 11. qs(lista,0,len(lista)-1) 12. return lista 13. 14.def qs (lista,inicial,final) : 15. p=1 16. "declaramos la pila de estructuras" 17. pila=[20] 18. for m in range(0,20) : 19. pila=Pila() 20. "ahora se comienza a ordenar" 21. pila[p].inferior,pila[p].superior=inicial,final 22. while p : 23. inicial,final=pila[p].inferior,pila[p].superior 24. p-=1 25. izdo,dcho=inferior,superior 26. while inferior<dcho : 27. izdo,dcho=inferior,superior 28. mitad=lista[izdo+((dcho-izdo)/2)] 29. while izdo<=dcho : 30. while lista[izdo]<mitad and izdo<final : izdo+=1 31. while mitad<lista[dcho] and dcho>inicial : dcho-=1 32. if izdo<=dcho : 33. lista[izdo],lista[dcho]=lista[dcho],lista[izdo] 34. izdo+=1 35. dcho-=1 36. if izdo<final : 37. p+=1 38. pila[p].inferior,pila[p].superior=izdo,final 39. final=dcho 40. return lista
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar