Talaan ng mga Nilalaman:
- Hakbang 1: ¿Ordenar Listas?
- Hakbang 2: Algoritmo "Bubble Sort" Ordenamiento De Burbuja
- Hakbang 3: El Algoritmo En El Circuit Playground
- Hakbang 4: Funcionando Y Reto
Video: Kit Ciencia Y Arte: Ordenando Listas (Bubble Sort): 4 na Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:14
En el mundo de las ciencias de la computación, saber ordenar listas es como saber escribir. Es una buena manera de ver como los algoritmos son una manera de hacer las cosas en una computadora, y que la forma directa de hacer algo no es la mejor en una computadora. Narito ang isang detalyadong bersyon ng "Bubble Sort", at ang iyong detalyadong pagpapatala
Maituturo ito, isaalang-alang ang mga ito sa AVANZADO, ngunit wala itong nadaanan na retos diffíciles, tulad ng mga eksperimento o eksperimento na walang pag-import, kung paano mag-isip…
Hakbang 1: ¿Ordenar Listas?
Hoy en día usamos la computadora en todas las cosas. Los teléfonos hoy en día son prácticamente super computadoras. Mientras las computadoras toman datos, se construyen listas de datos. Una lista de datos es un conjunto de datos como este:
{Tomás, Abraham Carolina, Matias, Maria, Marcela}
Es una lista de nombres. Ahora bien, en muchas ocasiones, necesitamos ordenarlos, es decir acomodar la lista en un orden partikular, por ejemplo de mayor a menor o viceversa, o en orden alfabético.
¿Porqué ordenarlos? Mag-ingat sa listahan ng mga nombres de la imagen. Es una lista larga, si les pido busquen el nombre IRENE, en ¿cual lista es más fácil? en la ¿ordenada verdad? bueno por eso mismo ordenar listas de datos es algo extremadamente importante en una computadora, pera luego poder usar los datos de forma efectiva.
¿Cómo los ordeno? pasemos al siguiente paso
Hakbang 2: Algoritmo "Bubble Sort" Ordenamiento De Burbuja
Si tengo una lista de números, o nombres, ¿Cómo las puedo ordenar? Existen muchas maneras de hacerlo, acá les voy a explicar la que se llama "Bubble Sort", no es de las más rápidas, de hecho puede que sea de las peores, pero si es un buen ejemplo de como una idea se escribe como un algorithitmo, y luego se escribe como un programa de computadora. Además, creo que ve super bonito en el circuit playground.
La Idea
Ang ideya na ito ng Bubble Sort, es la de burbujas flotando, si ha dos burbujas y una es más grande que la otra, la más liviana pasa a la más pesada, y así se van acomodando… es muy similar a tener una caja de piedras de diferentes tamaños, si las sacudo por suf sapate tiempo, las más pesadas se van al fondo y las livianas se quedan arriba.
El Algoritmo
Los pasos del algoritmos son:
- Tenemos una lista de 1 a n elementos
- Comenzar por el 1
- Preguntar si el número en la posición actual es mayor que el de la posición siguiente
- Si es mayor cambiarlos, sino, dejarlos igual
- Mover una posición
- Si es el n, entonces marcar n-1 cómo el último y volver a 2
- Sino, Volver a 3
- Si el marcado como último es igual al primero, entonces terminar
En Acción
Ang mga ito ay dapat na magsulat ng algoritmo es algo confuso, sa pamamagitan ng video explico cual es el concepto y funcionamiento detrás del algoritmo con un ejemplo sencillo.
Hakbang 3: El Algoritmo En El Circuit Playground
El Código básico
Ito ang unang bersyon ng algoritmo, sin agregarla nada de luces o sonido:
mga numero ng byte [9]; // Arreglo que contiene los numeros
int i, j; // Iteradores
// Algoritmo bubbleSort
void loop () {para sa (i = 0; i <= 9; i ++) {para (j = 0; j <= 9 - i; j ++) {kung (mga numero [j] <= mga numero [j + 1]) {// cambia posición de números float f = mga numero [j]; mga numero [j] = mga numero [j + 1]; mga numero [j + 1] = f; }}}}
Como ven primero creamos un arreglo de byte, en este caso lo llamamos mga numero [9]. Es un arreglo de 10 números (de 0 a 9), de numero tipo byte. Tambi'en creamos dos iteradores i y j. Estos son los que vana recorrer el arreglo.
En el loop prinsipal, vean las línea:
para sa (i = 0; i <= 9; i ++) {para (j = 0; j <= 9 - i; j ++) {}}
Que i recorre todo el arreglo de 0 a 9. Dentro de esta j, noten como va de 0 a 9-i. Es decir, primero va de 0 a 9, luego de 0 a 9-1, luego de 0 a 9-2. Ito ay ang iyong como se ve en el video, por cada iteración sabemos que el ultimo numero ya es el mayor.
Dentro de esos iteradores, se hace la pregunta:
kung (mga numero [j] <= mga numero [j + 1])
Es decir si el siguiente es menor o igual entonces debemos cambiarlo. Para cambiarlo hay que hacer un "swap" es decir tomar el valor del arreglo, guardarlo en una variable temporal, asignárle el nuevo valor, y luego en temporal al la siguiente posición del arreglo. Vánlo en estas trés líneas de código:
lumutang f = mga numero [j]; // temporal
mga numero [j] = mga numero [j + 1]; mga numero [j + 1] = f;
Descargar el Circuit Playground
El código completeo en Github, incluye todo lo necesario para generar un nuevo arreglo aleatorio con números de 0 a 255, y para usar el numero como cantidad de rojo, para prender los LEDs. Ustedes lo pueden modificar para que haga más cosas como sonidos, atbp.
Hakbang 4: Funcionando Y Reto
En el video además le agregué sonido, eso se los dejo de reto a Alexa.
Mga Reto
- Agregar sonido
- Programar otros algorithitmos de ordenamiento (Mabilis na Pagbukud-bukurin, Pagsamahin ang Pagsunud-sunurin)
- Medir que tan rápido resuelve e arduino, colocando cada vez más elementos en el arreglo y medir cuanto tarda, ¿Es lineal?
Inirerekumendang:
Kit Ciencia Y Arte: Cómo Cargar Código Al Palaruan: 4 Mga Hakbang
Kit Ciencia Y Arte: Cómo Cargar Código Al Palaruan: Ac á explicamos como se " sube " el c ó digo. EL c ó digo de cada proyecto est á en cada itinuturo, sin embargo puede descargar todo el c ó digo en el GitHub
Bubble Talk: Gawin ang Iyong Pahayag sa Mga Bubble !: 6 Mga Hakbang (na may Mga Larawan)
Bubble Talk: Ibalik ang Iyong Talumpati sa Mga Bubble !: "quod, ut dicitur, si est homo bulla, eo magis senex (para kung, tulad ng sinasabi nila, ang tao ay isang bula, lalo na't isang matandang lalaki)" - Marcus Terentius Varro (116 BC - 27 BC), De Re Rustica Ang isang sabon ng bula ay ephemeral. Tumatagal lamang ito para sa isang maikling sandali at qui
Kit Ciencia Y Arte: Máquinas Que Aprenden Sonido: 4 Hakbang
Kit Ciencia Y Arte: Máquinas Que Aprenden Sonido: Aprender de inteligencia artificial es mucho m á s f á cil de lo que parece. El primer paso es entender el funcionamiento de una de las unidades m á s simples en programaci ó n, que por analog í a con el cerebro humano, es l
Kit Ciencia Y Arte: Algoritmo Genético (Vida Artipisyal): 6 Mga Hakbang
Kit Ciencia Y Arte: Algoritmo Genético (Vida Artipisyal): Los algoritmos gen é ticos son probablemente una de las cosas m á s interesantes de la computaci ó n (en mi opini ó n). B á sicamente se toma la idea de evoluci ó n de la biolog í a, y a aplica a un algoritmo en u
Kit Ciencia Y Arte: Un Makey Makey a Otro Nivel: 4 Hakbang (na may Mga Larawan)
Kit Ciencia Y Arte: Un Makey Makey a Otro Nivel: El Makey Makey es un dispositivo electr ó nico muy popular en educaci ó n, pues con el se pueden hacer r á pidamente ejercicios de computaci ó n tangible e interacci ó n f í sica con computadoras.El Makey Makey, walang es m