Kit Ciencia Y Arte: Ordenando Listas (Kabarcık Sıralama): 4 Adım
Kit Ciencia Y Arte: Ordenando Listas (Kabarcık Sıralama): 4 Adım
Anonim
Kit Ciencia Y Arte: Ordenando Listas (Kabarcık Sıralaması)
Kit Ciencia Y Arte: Ordenando Listas (Kabarcık Sıralaması)

En el mundo de las ciencias de la computación, saber ordenar listas es como saber escribir. Algoritmaların artık bir özelliği yok. "Kabarcık Sıralaması", tüm ayrıntıların açıklanması için açık bir şekilde açıklanır.

Este Instructable, AVANZADO'yu dikkate alarak, hiçbir sorunla karşılaşmadan, hiçbir sorunla karşılaşmadan, hiçbir uzmanın uzmanlığıyla, önemli olmadığı, hazır olmadığı…

Adım 1: ¿Sıradan Listeler?

¿Sıradan Listeler?
¿Sıradan Listeler?

Son günlerin en iyisi. Los telefonos hoy en día son practicamente süper bilgisayar programları. Tüm verileri hesaplamak, verileri yorumlamak. Şu anki verilerle ilgili bilgiler:

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

Aslına uygun değil. Ahora bien, en çok ocasiones, necesitamos ordenarlos, es decir acomodar la lista en sıra dışı, por ejemplo de belediye başkanı bir menor o viceversa, o en orden alfabético.

¿Porque ordenarlos? Veamos el ejemplo de la la lista de nombres de la imagen. En basit listeler, en basit kurallar IRENE, en basit listeler mi? en la ¿ordenada verdad? Bu, daha fazla bilgi için yanlış listeler, tüm verilerin sıralanması, her şeyin en önemlileri ve en önemlileri.

¿Cómo los ordeno? pasemos al siguiente paso

2. Adım: Algoritmo "Kabarcık Sıralaması" Ordenamiento De Burbuja

Image
Image

Sayısız liste, o nombreler, ¿Cómo las puedo ordenar? Çok fazla şey var, açık bir şekilde, "Kabarcık Sıralaması", hiçbir şey yok, hiçbir şey bilmiyor algoritmo, y luego, como un programa de computadora'yı tanımlayın. Además, creo que ve super palamut en el devre oyun alanı.

Fikir

Bubble Sort, harika bir şey, büyük bir filo, en büyük ve en iyi iş, en büyük ve en büyük hafta, en büyük ve en büyük hafta, her gün başka bir yerde… Farklılıklar tamaños, las sacudo por suficiente tiempo, las más pesadas se van al fondo ve las livianas se quedan arriba.

El Algoritmo

Los pasos del algoritmos oğlu:

  1. Tenemos una lista de 1 bir n elementos
  2. Comenzar por el 1
  3. Öngörülen bir durum var.
  4. Sies belediye başkanı cambiarlos, sino, dejarlos igual
  5. Hareketsiz konum
  6. Si es el n, entonces marcar n-1 cómo el último y volver a 2
  7. Çin, Volver bir 3
  8. Si el marcado como último es igual al primero, entonces terminar

En Acción

Algoritma ve algoritmik bilgi karmaşası, por eso vean el video açıklayıcı es el konsepto y funcionamiento detrás del algoritmo con un ejemplo sencillo.

3. Adım: El Algoritmo En El Devre Oyun Alanı

El Código basico

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

bayt sayıları[9];//Arreglo que contiene los numeros

int i, j;//İteradores

//Algoritma balonu Sıralaması

void loop() { for (i = 0; i <= 9; i++) { for (j = 0; j <= 9 - i; j++) { if (sayılar[j] <= sayılar[j + 1]) { //cambia konumu de números kayan nokta f = sayılar[j]; sayılar[j] = sayılar[j + 1]; sayılar[j + 1] = f; } } } }

Como ven primero creamos un arreglo de byte, en este caso lo llamamos sayıları[9]. 10 números (de 0 a 9), de numero tipo bayt. Tambi'en creamos dos iteradores i y j. Estos son los que vana kaydedici el arreglo.

En el loop müdürü, vean las línea:

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

0 a 9'da sıraya gir. 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, cada iteración sabemos que el ultimo numero ya es el belediye başkanı.

Dentro de esos yinelemeler, se hace la pregunta:

if (sayılar[j] <= sayılar[j + 1])

Es decir si el siguiente es menor o igual entonces debemos cambiarlo. Para cambiarlo hay que hacer un "takas" es karar el valor del arreglo, guardarlo en una değişken zamansal, asignárle el nuevo valor, y luego en zamansal al la siguiente posición del arreglo. Vánlo en estas trés líneas de código:

kayan nokta f = sayılar[j]; //geçici

sayılar[j] = sayılar[j + 1]; sayılar[j + 1] = f;

İndirilen Devre Oyun Alanı

El código tr Github, genel olarak nuevo arreglo aleatorio con números de 0 ve 255, y para usar el numero como cantidad de rojo, para prender los LED'leri içerir. En son yapılan değişiklikler para que haga más cosas como sonidos, vb.

Adım 4: Funcionando Y Reto

En el video birleştirilmiş sonido, eski usulleri yeniden gözden geçirme.

Retolar

  1. Agregar sonido
  2. Programlı otros algoritmos de ordenamiento (Hızlı Sıralama, Birleştirme Sıralaması)
  3. Daha fazla bilgi arduino, arduino, colocando cada vez más elementos en el arreglo ve medir cuanto tarda, ¿Es lineal?

Önerilen: