Sadržaj:
- Korak 1: ¿Ordenar liste?
- Korak 2: Algoritmo "Sortiranje mjehurića" Ordenamiento De Burbuja
- Korak 3: Igralište El Algoritmo En El Circuit
- Korak 4: Funcionando Y Reto
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:08
En el mundo de las ciencias de la computación, sabre ordenar liste es como sabre 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. Acá explico uno de los algoritmos más cnocidos de comutación que es el "Bubble Sort", y exlicaré con detalle en que consiste
Este Instructable, razmatrajte que es AVANZADO, ali ne dajte nadu kako biste mogli retos difíciles, jer to nije nikakav eksperst o Experta no Importa, haz el intento igual…
Korak 1: ¿Ordenar liste?
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 datas, sastavi liste za datote. Spisak datoteka sa podacima nije povezan sa podacima u vezi sa ovim:
{Tomás, Abraham Carolina, Matias, Maria, Marcela}
To je lista lista nombresa. Ahora bien, en muchas ocasiones, necesitamos ordenarlos, es decir acomodar la list en un orden specific, por ejemplo de Mayor a menor o viceversa, o en orden alfabético.
¿Porqué ordenarlos? Veamos el ejemplo de la lista de nombres de la imagen. Ako ste na popisu korisnika, ako ne želite prijaviti IRENE, en ¿cual lista je más fácil? en la ¿ordenada verdad? bueno por eso mismo ordenar liste de datos es algo extrememadamente importante en una computadora, pera luego poder usar los datos de forma efectiva.
¿Cómo los ordeno? pasemos al siguiente paso
Korak 2: Algoritmo "Sortiranje mjehurića" Ordenamiento De Burbuja
Ako ste na popisu numera, o nombres, ¿Cómo las puedo ordenar? Postojite muchas maneras de hacerlo, acá les voy a explicar la que se lama "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 algoritmo, y luego se može opisati kao program za računare. Además, creo que ve super bonito en el circuit playground.
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 similar 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 sin:
- Ova lista je 1 lista elemenata
- Komenzar por el 1
- Preguntar si el número en la posición aktuelni es gradonačelnik que el de la pozición siguiente
- Vi ste gradonačelnik cambiarlos, sino, dejarlos igual
- Mover una pozició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
Como ven a veces escribir un algoritmo es algo confuso, por eso vean el video exlico cual es el concepto y funkcionamiento detrás del algoritmo con un ejemplo sencillo.
Korak 3: Igralište El Algoritmo En El Circuit
El Código básico
Veamos primero una version del algoritmo, greh agregarla nada de luces o sonido:
brojevi bajtova [9]; // Arreglo que contiene los numeros
int i, j; // Iteradores
// Algoritmo bubbleSort
void loop () {for (i = 0; i <= 9; i ++) {for (j = 0; j <= 9 - i; j ++) {if (brojevi [j] <= brojevi [j+1]) {// cambia posición de números float f = numbers [j]; brojevi [j] = brojevi [j + 1]; brojevi [j + 1] = f; }}}}
Como ven primero creamos un arreglo de byte, en este caso lo llamamos numbers [9]. Ako nemate 10 brojeva (od 0 do 9), broj numeričkih bajtova. Tambi'en creamos dos iteradores i y j. Estos son los que vana recorrer el arreglo.
En el loop principal, vean las línea:
za (i = 0; i <= 9; i ++) {za (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 0 0 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 Mayor.
Dentro de esos iteradores, se hace la pregunta:
if (brojevi [j] <= brojevi [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 and una variably 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:
float f = brojevi [j]; // vremenski
brojevi [j] = brojevi [j + 1]; brojevi [j + 1] = f;
Preuzmi Circuit Playground
El código je kompletan u Github -u, uključujući i one potrebne za generiranje generatora i nuero arreglo aleatorio sa númerosima od 0 do 255, sa parametrima numeričke kontrole za LED diode. Ustedes lo pueden modificar para que haga más cosas como sonidos, etc.
Korak 4: Funcionando Y Reto
S video zapisom además le agregué sonido, tako da se los dejo de reto a ustedes.
Retos
- Agregar sonido
- Programar otros algoritmos de ordenamiento (Brzo sortiranje, Spajanje sortiranja)
- Medir que tan rápido resuelve e arduino, colocando cada vez más elementos en el arreglo y medir cuanto tarda, ¿Es lineal?
Preporučuje se:
Bubblebot: Gigantski generator mjehurića: 9 koraka (sa slikama)
Bubblebot: Gigantski generator mjehurića: Dobro došli! Evo jednog sjajnog vikend projekta! Napravite ovog sjajnog mjehurićastog bota: Iako je pomalo dugotrajan i zahtijeva iskustvo s Arduinom, ova će vam konstrukcija zasigurno podariti beskrajnu slavu među vašim prijateljima, mališanima i odraslima! Avast, t
Kit Ciencia Y Arte: Cómo Cargar Código Al Igralište: 4 koraka
Kit Ciencia Y Arte: Cómo Cargar Código Al Igralište: Ac á explicamos como se " sube " el c ó digo. EL c ó digo de cada proyecto est á en cada instructable, sin embargo puede descargar todo el c ó digo en el GitHub
Kit Ciencia Y Arte: Máquinas Que Aprenden Sonido: 4 koraka
Kit Ciencia Y Arte: Máquinas Que Aprenden Sonido: Aprender de inteligencia umjetni es mcho a m a acute; s f á cil de lo que parece. El primer paso es entender el funkcionamiento de una de las unidades m á s simples en programci ó n, que por analog í con el cerebro humano, es l
Kit Ciencia Y Arte: Algoritmo Genético (Vida Artificial): 6 koraka
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 opini ó n). B á sicamente se toma la idea de evoluci ó n de la biolog í a, y se primjenjuje i un algoritmo en u
Kit Ciencia Y Arte: Un Makey Makey i Otro Nivel: 4 koraka (sa slikama)
Kit Ciencia Y Arte: Un Makey Makey a Otro Nivel: El Makey Makey nije na raspolaganju za električnu komunikaciju; nico muy popularan en educaci ó n; con computadoras.El Makey Makey, no es m