Ordenar por selección
Otra clasificación de uso común se denomina ordenamiento por selección. Así es cómo funciona:
- Explore la ordenación por selección antes de escribir cualquier código. Con tu clase, ponte de pie y forma una fila. Luego, siga el proceso de ordenación por selección para ordenar a todos, de menor a mayor, por el número de su domicilio.
- ¿Cómo es la ordenación por selección un ejemplo de recursividad? ¿Cuál es el caso base?
Para escribir un bloque de ordenar por selección
en Snap!, necesitarás código para un caso base y código que siga los pasos de la ordenación por selección.
-
Escribe el bloque
primer elemento de
. Para nombres, este bloque devuelve el primer nombre en orden alfabético de una lista:
- Escribe el código que encuentre el índice del primer elemento. Este valor es 8 para la lista de nombres de arriba. (Puede que no necesites este paso, depende de tu algoritmo. Intenta pasar al siguiente paso sin hacer esto.)
-
Escribe el código que cree una lista nueva con el primer elemento borrado. ¡Hay más de una forma de hacerlo!
-
Construye el bloque
ordenar por selección
.
- ¿Cuántas veces se llama a sí mismo
ordenar por selección
?
"U8L2-OrdenarPorSelección"
Al igual que los comandos recursivos, puede que parezca que los reporteros recursivos hacen magia, debido a que parte del código dice al reportero recursivo que se llame a sí mismo. Los reportteros recursivos funcionan cada vez, la nueva llamada proporciona una entrada más pequeña al mismo reportero, hasta que, eventualmente, llega al caso base. Una vez se llega al caso base, el resultado final se construye por partes al reportar cada llamada un valor al elemento que la llama.
-
Este archivo de datos 2014 Popularity of Baby Names contiene una larga lista de nombres de bebé del 2014. Importa los datos, luego construye un algoritmo que devuelva todos los nombres en orden alfabético con una letra dada: