Orodha ya maudhui:

Kit Ciencia Y Arte: Ordenando Listas (Aina ya Bubble): Hatua 4
Kit Ciencia Y Arte: Ordenando Listas (Aina ya Bubble): Hatua 4

Video: Kit Ciencia Y Arte: Ordenando Listas (Aina ya Bubble): Hatua 4

Video: Kit Ciencia Y Arte: Ordenando Listas (Aina ya Bubble): Hatua 4
Video: CS50 2013 - Week 4 2024, Novemba
Anonim
Kit Ciencia Y Arte: Ordenando Listas (Aina ya Bubble)
Kit Ciencia Y Arte: Ordenando Listas (Aina ya Bubble)

En el mundo de las ciencias de la computación, orodha ya orodha ya orodha ya mambo yanayofaa. 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 "Aina ya Bubble", na kuelezea con detalle en que consiste

Iliyopewa Agizo, tafakari juu ya AVANZADO, hakuna maana ya nyasi inayoweza kutofautisha, kwa sababu haitafahamika kwa utaalam na utaalam, sio tu ya kawaida…

Hatua ya 1: List Ordenar Listas?

Orodha ya Ordenar?
Orodha ya Ordenar?

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. Orodha yetu ya data ni pamoja na orodha hii:

{Tomás, Abraham Carolina, Matias, Maria, Marcela}

Es una orodha ya majina. Ahora bien, en muchas occasiones, necesitamos ordenarlos, es decir acomodar la lista en un orden particular, for theempress of meor a menor of viceversa, o en orden alfabético.

Or Porqué ordenarlos? Veamos el ejemplo de la lista de nombres de la imagen. Je! Una orodha ya watu, ikiwa ni pamoja na orodha ya IRENE, orodha ya kawaida ni nini? en la ¿ordenada verdad? maelezo zaidi ni kama ilivyo hapo chini.

Ó Cómo los ordeno? pasemos al siguiente paso

Hatua ya 2: Algoritmo "Aina ya Bubble" Ordenamiento De Burbuja

Image
Image

Je! Ni orodha gani ya orodha, majina, na ¿Cómo las puedo ordenar? Kuwepo kwa muda mrefu zaidi, ni pamoja na maelezo ya "Mwanamuziki wa Bubble", hakuna mtu anayesimamia maoni yake, atatoa maoni juu ya bahari kuu, kila mtu anaweza kupata maoni yako kuhusu wazo hili algoritmo, y luego se encribe como un programa de computadora. Además, creo que ve super bonito en el circuit uwanja wa michezo.

La Wazo

La wazo del Bubble Aina, ni moja ya burbujas flotando, si ha dos burbujas na wewe ni zaidi ya watu wengi, lakini unaweza kupata maoni yako juu ya kila kitu, na hivyo unaweza kupata maoni yako… kama wewe ni sawa na tener wewe ni sababu ya piedras de utofauti tamaños, si las sacudo por suficiente tiempo, las más pesadas se van al fondo y las livianas se quedan arriba.

El Algoritmo

Mwana wa Los pasos del algoritmos:

  1. Tenemos una lista de 1 a n elementos
  2. Comenzar por el 1
  3. Preguntar si el número en la posición the most meya que el de la posición siguiente
  4. Meya wa meya cambiarlos, sino, dejarlos igual
  5. Mover una posición
  6. Si es el n, entonces marcar n-1 cómo el último y volver a 2
  7. Sino, Volver 3
  8. Si marcado como último es igual al primero, inatia ndani vituo

En Acción

Unaweza pia kusoma na kuonyesha njia zingine za kufanya kazi, na video hiyo inaweza kufafanuliwa kwa njia inayofafanuliwa na wazo la kujifurahisha kwa njia ya kufanya kazi kwa njia inayofaa.

Hatua ya 3: El Algoritmo En El Circuit Uwanja wa michezo

El Código básico

Veamos primero una versión del algoritmo, sin agregarla nada de luces o sonido:

nambari byte [9]; // Arreglo que contiene los numeros

int i, j; // Iteradores

// Bubble ya Algoritmo

kitanzi batili () {for (i = 0; i <= 9; i ++) {for (j = 0; j <= 9 - i; j ++) {if (numbers [j] <= numbers [j + 1]) {// cambia posición de números float f = nambari [j]; namba [j] = nambari [j + 1]; namba [j + 1] = f; }}}}

Como ven primero creamos un arreglo de byte, en este caso lo llamamos namba [9]. Es un arreglo de 10 números (de 0 a 9), hadi namba moja. Tambi'en creamos dos iteradores i y j. Estos son los que vana recorrer el arreglo.

En el loop principal, vean las línea:

kwa (i = 0; i <= 9; i ++) {kwa (j = 0; j <= 9 - i; j ++) {}}

Que i recorre todo el arreglo de 0 a 9. Dentro de esta j, note como va de 0 a 9-i. Kuamua, primero va de 0 a 9, luego de 0 a 9-1, luego de 0 a 9-2. Majina haya ni video, kwa sababu inaweza kuwa muhimu kwa meya wa jiji.

Dentro de esos iteradores, se hace la pregunta:

ikiwa (nambari [j] <= nambari [j + 1])

Es decir si el siguiente es menor o igual entonces debemos cambiarlo. Para cambiarlo hay que hacer un "swap" is 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:

kuelea f = nambari [j]; // ya muda

namba [j] = nambari [j + 1]; namba [j + 1] = f;

Descargar el Uwanja wa Uwanja wa michezo

El código completo en Github, incluye todo lo necesario para generar un nuevo arreglo aleatorio con números de 0 a 255, ni kwa ajili ya kutumia namba moja kwa moja, kwa prender los LEDs. Ustedes lo pueden modificar para que haga más cosas como sonidos, nk.

Hatua ya 4: Funcionando Y Reto

Katika video hii ni pamoja na kukubali sonido, ambayo inaweza kupatikana tena.

Retos

  1. Agregar sonido
  2. Programu otros algoritmos de ordenamiento (Aina ya Haraka, Unganisha Aina)
  3. Je! Unapenda kituo hiki?

Ilipendekeza: