No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

Aprende Ingl茅s, Programaci贸n, AI, Ciberseguridad y mucho m谩s.

Antes: $249

Currency
$209
Suscr铆bete

Termina en:

5 D铆as
9 Hrs
16 Min
22 Seg

Notaci贸n Big O

7/11
Recursos

Aportes 12

Preguntas 1

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

Como no veo este curso en los Recursos les dejo este curso que me ayudo a comprender Big O de una manera facil y rapida https://platzi.com/cursos/complejidad-js/

Les comparto un video en ingl茅s, bastante comprensible explicando el tema de complejidad computacional:

www .youtube. com/watch?v=47GRtdHOKMg

  • Constant - O(1)
    Runtime does not depend on input size
    Example: Look up the first item
    [1,2,5]

  • Logarithmic - O(log(n))
    Runtime grows slower than the input size
    Example: Binary Search
    Search an element in an ordered list
    Open dictionary in half
    Check value
    See if is at the first half or the second half of the dictionary

  • Linear - O(n)
    The runtime grows at the same rate as the input.
    Example: Unsorted list

  • Log-Linear - O(n log(n))
    An operation of log(n) complexity for each input value
    Example: Efficient Sorting

  • Quadratic - O(n^2)
    An operation of complexity O(n) is carried out for each input
    Example: Check all pairs of input values (Double for loop)

  • Polynomial - O(n^3)鈥
    Computations with other exponents (n^4, n^5, etc)
    Example: Check all triplets of input values (Triple for loop)

  • Exponential - O(2^n)鈥
    Complexity is multiplied (doubled, tripled, etc) with each additional input value
    Example: Recursive Algorithms - Traveling salesman problem

  • Worse- O(n!)
    Runtimes can be worse than exponential
    Examples: Permutations

Le pregunt茅 a chatgpt que me explicara el concepto de Notaci贸n Big o para un ni帽o de 10 a帽os y esto me dijo:

隆Claro! Voy a intentar explicar la notaci贸n Big O de una manera sencilla para un ni帽o de 10 a帽os.

La notaci贸n Big O se usa en programaci贸n para describir la eficiencia de un algoritmo. Imagina que tienes que ordenar una lista de n煤meros en orden ascendente. Hay diferentes formas de hacer esto, algunas m谩s r谩pidas que otras. Si usas un algoritmo muy lento, puede que tardes mucho tiempo en ordenar la lista, especialmente si la lista es muy grande.

La notaci贸n Big O se utiliza para medir cu谩nto tiempo tarda un algoritmo en completarse en funci贸n del tama帽o de los datos de entrada. En otras palabras, mide la rapidez con la que un algoritmo puede procesar datos a medida que la cantidad de datos aumenta.

Por ejemplo, si tienes que ordenar una lista de 10 elementos, es posible que un algoritmo tardara unos segundos en completar la tarea. Pero si tienes que ordenar una lista de 1 mill贸n de elementos, el mismo algoritmo podr铆a tardar varios minutos o incluso horas.

La notaci贸n Big O se representa con una letra 鈥淥鈥 seguida de una funci贸n matem谩tica que describe la eficiencia del algoritmo en funci贸n del tama帽o de los datos de entrada. Por ejemplo, si un algoritmo tarda un tiempo constante en completarse, se escribir铆a como O(1). Si el tiempo que tarda el algoritmo aumenta linealmente con el tama帽o de los datos de entrada, se escribir铆a como O(n), donde 鈥渘鈥 es el tama帽o de los datos de entrada.

En resumen, la notaci贸n Big O es una manera de medir la eficiencia de un algoritmo en funci贸n del tama帽o de los datos de entrada. Si un algoritmo tiene una notaci贸n Big O peque帽a, significa que es muy eficiente y puede procesar grandes cantidades de datos r谩pidamente. Si el algoritmo tiene una notaci贸n Big O grande, puede tardar mucho tiempo en procesar grandes cantidades de datos.

creo que lo correcto habr铆a sido decir que las complejidades son O(log x), O(x) porque el eje es x, la otra opci贸n es cambiar x por n para ilustrar mejor la relaci贸n entre el aumento de valores con su funci贸n

Para aquellos que usan Chat GPT para estudiar" Para que le explique el tema que no dominan o que quieren que este mas claro pidanle que les explique el tema usando la tecnica Feyman, si quieren que le haga preguntas para ver cuanto comprendieron del tema pues que use la tecnica Socratica. Lo uso todo el tiempo y me ha ayudado mucho. Suerte a todos.

La notaci贸n Big O es una forma de medir la complejidad de un algoritmo. Se utiliza para determinar cu谩nto tiempo y espacio se tarda un algoritmo en ejecutarse.

La notaci贸n Big O se representa como O(n), donde n es el tama帽o del conjunto de datos de entrada. Esto significa que la complejidad del algoritmo aumenta proporcionalmente al tama帽o del conjunto de datos.

Por ejemplo, si tenemos un algoritmo que tarda 1 segundo en procesar un conjunto de datos de tama帽o 100, y tarda 2 segundos en procesar un conjunto de datos de tama帽o 200, podemos decir que la complejidad del algoritmo es O(n), ya que el tiempo de ejecuci贸n se duplica cuando el tama帽o del conjunto de datos se duplica.

La notaci贸n Big O se utiliza para analizar la eficiencia de los algoritmos y para comparar diferentes algoritmos entre s铆. Es importante encontrar el algoritmo m谩s eficiente para resolver un problema determinado, ya que esto puede marcar una gran diferencia en el rendimiento de una aplicaci贸n.

En resumen, la notaci贸n Big O es una herramienta 煤til para evaluar la complejidad de los algoritmos y encontrar el m谩s eficiente para resolver un problema determinado.

les dejo este recurso: ![](https://static.platzi.com/media/user_upload/image-3a2f5f8b-e3c4-47cc-8ebe-e28469084591.jpg)

Esta clase me gust贸 mucho y me parece una explicaci贸n sencilla para entender el concepto pero sin duda se debe profundizar. Les comparto un peque帽o post donde hablan un poco m谩s de estas notaciones tan importantes.

Me pareci贸 muy buena explicaci贸n. Lo que debe ser y sencillo.