Isi kandungan:
- Langkah 1: ¿Ordenar Listas?
- Langkah 2: Algoritmo "Bubble Sort" Ordenamiento De Burbuja
- Langkah 3: Taman Permainan El Algoritmo En El Circuit
- Langkah 4: Funcionando Y Reto
Video: Kit Ciencia Y Arte: Ordenando Listas (Bubble Sort): 4 Langkah
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:11
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. Maklumat lanjut dan algoritma ms cnocidos de comutación que es el "Bubble Sort", y explicaré con detalle en que conste
Este Instructable, pertimbangan que es AVANZADO, pero no hay nada como los retos diffíciles, así que si no eres Experto o Experta no Importa, Haz El Intento …
Langkah 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 tertentu, oleh ejemplo de walikota a menor o viceversa, o en orden alfabético.
¿Porqué ordenarlos? Veamos el ejemplo de la lista de nombres de la imagen. Es una lista larga, si les pido busquen el nombre IRENE, ena senarai yang biasa? en la ¿ordenada verdad? bueno por eso mismo ordenar listas de datos es algo extremeadamente importante en una computadora, pera luego poder usar los datos de forma efectiva.
Ó Cómo los ordeno? pasemos al siguiente paso
Langkah 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 menjemput como un algoritmo, y luego se escribe como un programa de computadora. Además, taman permainan super bonito en el.
La Idea
La idea del 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 like a tener una caja de piedras de diferentes tamaños, si las sacudo por suficiente tiempo, las más pesadas se van al fondo y las livianas se quedan arriba.
El Algoritmo
Los pasos del algoritmos anak:
- Tenemos una lista de 1 a n elementos
- Comenzar por el 1
- Preguntar si el número en la posición sebenar es walikota que el de la posición siguiente
- Si es Datuk Bandar cambiarlos, sino, dejarlos igual
- Pindah una posición
- Si es el n, memanggil marcar n-1 cómo el último y volver a 2
- Sino, Volver a 3
- Si el marcado como último es igual al primero, memanggil terminal
En Acción
Como ven a veces escribir un algoritmo es algo confuso, por eso vean el video explico cual es el concepto y funcionamiento detrás del algoritmo con un ejemplo sencillo.
Langkah 3: Taman Permainan El Algoritmo En El Circuit
El Código básico
Veamos primero una versión del algoritmo, sin agregarla nada de luces o sonido:
nombor bait [9]; // Arreglo que contiene los numeros
int i, j; // Iteradores
// Algoritmo bubbleSusun
gelung void () {untuk (i = 0; i <= 9; i ++) {untuk (j = 0; j <= 9 - i; j ++) {if (angka [j] <= nombor [j + 1]) {// cambia posición de números float f = nombor [j]; nombor [j] = nombor [j + 1]; nombor [j + 1] = f; }}}}
Como ven primero creamos un arreglo de byte, en este caso lo llamamos nombor [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:
untuk (i = 0; i <= 9; i ++) {untuk (j = 0; j <= 9 - i; j ++) {}}
Que i recorre todo el arreglo de 0 a 9. Dentro de esta j, nota 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. Esto porque como se ve en el video, por cada iteración sabemos que el ultimo numero ya es el walikota.
Dentro de esos iteradores, seace la pregunta:
jika (nombor [j] <= nombor [j + 1])
Es decir si el siguiente es menor o igual memikat debemos cambiarlo. Para cambiarlo hay que hacer un "swap" es decir tomar el valor del arreglo, guardarlo en una variaboral 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:
apungan f = nombor [j]; // temporal
nombor [j] = nombor [j + 1]; nombor [j + 1] = f;
Taman Permainan Descargar el Circuit
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 LED. Ustedes lo pueden modificar para que haga más cosas como sonidos, dll.
Langkah 4: Funcionando Y Reto
En el video además le agregué sonido, eso se los dejo de reto a ustedes.
Retos
- Agregar sonido
- Programar otros algoritmos de ordenamiento (Quick Sort, Merge Sort)
- Medir que tan rápido resuelve e arduino, colocando cada vez más elementos en el arreglo y medir cuanto tarda, ¿Es garis?
Disyorkan:
Bubble Sort in Batch !: 4 Langkah
Bubble Sort in Batch !: Pernah terfikir untuk membuat algoritma penyortiran mudah dalam kumpulan murni? Jangan risau, semudah pai! Ini juga menunjukkan proses penyortirannya. (Catatan: Saya membuat ini di komputer Windows XP sehingga beberapa kod mungkin tidak berfungsi. Walaupun begitu, saya tidak pasti. Maaf …)
Kit Ciencia Y Arte: Taman Permainan Cómo Cargar Código Al: 4 Langkah
Kit Ciencia Y Arte: Taman Permainan Cómo Cargar Código Al: Ac á explicamos como se " sube " el c ó digo. EL c ó digo de cada proyecto est á en cada diajar, sin embargo puede descargar todo el c ó digo en el GitHub
Kit Ciencia Y Arte: Máquinas Que Aprenden Sonido: 4 Langkah
Kit Ciencia Y Arte: Máquinas Que Aprenden Sonido: Aprender de inteligencia buatan es mucho m á s á 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
Kit Ciencia Y Arte: Algoritmo Genético (Vida Artificial): 6 Langkah
Kit Ciencia Y Arte: Algoritmo Genético (Vida Artificial): Los algoritmos gen é ticos son probablemente una de las cosas m á s interesantes de la computaci ó n (en mi pendapat ó n). B á sicamente se toma la idea de evoluci ó n de la biologis í a, y se aplica a un algoritmo en u
Kit Ciencia Y Arte: Un Makey Makey a Otro Nivel: 4 Langkah (dengan Gambar)
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 oacacac e nac con computadoras.El Makey Makey, tidak ada