فهرست مطالب:

Kit Ciencia Y Arte: Ordenando Listas (مرتب سازی حبابی): 4 مرحله
Kit Ciencia Y Arte: Ordenando Listas (مرتب سازی حبابی): 4 مرحله

تصویری: Kit Ciencia Y Arte: Ordenando Listas (مرتب سازی حبابی): 4 مرحله

تصویری: Kit Ciencia Y Arte: Ordenando Listas (مرتب سازی حبابی): 4 مرحله
تصویری: Противовирусная настройка иммунитета 2024, نوامبر
Anonim
Kit Ciencia Y Arte: Ordenando Listas (مرتب سازی حبابی)
Kit Ciencia Y Arte: Ordenando Listas (مرتب سازی حبابی)

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. Acá explico uno de los algoritmos más cnocidos de comutación que es el "مرتب کردن حباب" ، y explicaré con detalle en que consiste

به عنوان یک دستورالعمل ، می توانید AVANZADO را بررسی کنید ، اما نمی توانید از مشکلات گذشته خود جلوگیری کنید ، زیرا هیچ گونه تخصصی یا تخصصی ندارد ،…

مرحله 1: ¿Ordenar Listas؟

¿Ordenar Listas؟
¿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. فهرست داده ها و اطلاعات مربوط به داده ها در این لیست است:

{توماس ، آبراهام کارولینا ، ماتیاس ، ماریا ، مارسلا}

Es una lista de nombres. Ahora bien، en muchas ocasiones، necesitamos ordenarlos، es decir acomodar la lista en un orden taybetî، for ejemplo de Mayor a menor oversversa، 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، en¿ cual lista es más fácil؟ en la ¿ordenada verdad؟ bueno por eso mismo ordenar listas de datos es algo extremadamente importante un una computadora، pera luego poder usar los datos de forma efectiva.

¿Cómo los ordeno؟ pasemos al siguiente paso

مرحله 2: Algoritmo "Bubble Sort" Ordenamiento De Burbuja

Image
Image

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 algoritmo، y luego se escribe como un programa de computadora. Además، creo que ve super bonito en el مدرسه بازی.

لا ایده

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.

ال آلگوریتمو

پسر 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 real es şared que el de la posición siguiente
  4. Si es Mayor cambiarlos ، سینو ، dejarlos igual
  5. Mover una posición
  6. Si es el n، entarces marcar n-1 cómo el último y volver a 2
  7. سینو ، ولور 3
  8. Si el marcado como último es igual al primero ، ترمینال را دلپذیر می کند

با همکاری

Como ven a veces escribir un algoritmo es algo confuso، por eso vean el explico cual es el concepto y funcionamiento detrás del algoritmo con un ejemplo sencillo.

مرحله 3: زمین بازی El Algoritmo En El Circuit

بیسکو الکودیگو

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

اعداد بایت [9] ؛ // Arreglo que contiene los numeros

int i، j؛ // Iteradores

// Algoritmo bubbleSort

حلقه خالی () {برای (i = 0؛ i <= 9؛ i ++) {برای (j = 0؛ j <= 9 - i؛ j ++) {if (اعداد [j] <= اعداد [j+1]) {// cambia posición de números شناور f = اعداد [j] ؛ اعداد [j] = اعداد [j + 1] ؛ اعداد [j + 1] = f ؛ }}}}

Como ven primero creamos un arreglo de byte، en este caso lo llamamos [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 principal، vean las línea:

برای (i = 0؛ i <= 9؛ i ++) {برای (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. از این طریق می توانید از ویدیو استفاده کنید و از طریق آن به عنوان یک شهردار انتخاب کنید.

Dentro de esos iteradores، se hace la pregunta:

if (اعداد [j] <= اعداد [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:

شناور f = اعداد [j] ؛ // زمانی

اعداد [j] = اعداد [j + 1] ؛ اعداد [j + 1] = f ؛

زمین بازی Descargar el Circuit

با استفاده از Github ، می توانید برای ایجاد یک سیستم جدید در 0 و 255 ، و برای استفاده از LED های پیشین ، از این تعداد استفاده کنید. Ustedes lo pueden modificar para que haga más cosas como sonidos و غیره

مرحله 4: Funcionando Y Reto

En el video además le agregué sonido، eso se los dejo de reto a ustedes.

Retos

  1. آگرگار سونیدو
  2. Programar otros algoritmos de ordenamiento (مرتب سازی سریع ، مرتب سازی ادغام)
  3. Medir que tan rápido resuelve e arduino، colocando cada vez más elementos en el arreglo y medir cuanto tarda، ¿Es lineal؟

توصیه شده: