Programas HP48: Quicksort

8 dUTC Noviembre dUTC 2006 at 9:30 | In Ciencia, Hewlett Packard, Programación, Software libre | Leave a Comment

HP48GPara que la cosa no pare, ahí va un programilla que hice hace años. Lo publico con intención de que se aproveche y no se pierda en la noche de los tiempos. Este programa es una implementación del conocido algoritmo Quicksort. Hace ya tanto tiempo que no sería capaz de explicar como funciona (el lenguaje de la HP no se puede comentar, grave error). Por lo que recuerdo, se compone de dos programas llamados “IQuick” y “Quick”. El primero es el programa principal y el segundo, la función recursiva. Coje la variable ΣDAT y la ordena.

IQuick: « ΣDAT SIZE LIST→ DROP DROP 1 SWAP 0 0 0 Quick »

Quick: « → L R I J C « L 'I' STO R 'J' STO ΣDAT L R + 2 / IP 1 2 →LIST GET 'C' STO DO WHILE ΣDAT I 1 2 →LIST GET C REPEAT J 1 + 'J' STO END IF I J ≤ THEN ΣDAT I J RSWP 'ΣDAT' STO I 1 + 'I' STO J 1 - 'J' STO END UNTIL I J > END IF L J < THEN L J 0 0 0 Quick END IF I R < THEN I R 0 0 0 Quick END » »

Aún no hay comentarios »

Canal RSS de los comentarios de la entrada. URI para TrackBack.

Deja un comentario

XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <pre> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Blog de WordPress.com. | Theme: Pool by Borja Fernandez.
Entries and comments feeds.