No se que es Big O Notationalguien me podria ayudar. Estuve buscnado pero esta muy compleja la definicio.

Dimas Antonio Mendoza Lozano

Dimas Antonio Mendoza Lozano

Pregunta
studenthace 5 años

No se que es Big O Notationalguien me podria ayudar. Estuve buscnado pero esta muy compleja la definicio.

3 respuestas
para escribir tu comentario
    Carlos Humberto Urias Apodaca

    Carlos Humberto Urias Apodaca

    studenthace 2 años

    ¡Por supuesto! El análisis de la notación Big O (notación "O grande") es una herramienta importante en ciencias de la computación y matemáticas para describir la eficiencia de un algoritmo o la complejidad de un problema en términos de la cantidad de datos o el tamaño de entrada.

    En términos simples, la notación Big O se utiliza para expresar el crecimiento asintótico del tiempo de ejecución o del espacio necesario para resolver un problema a medida que el tamaño del problema se vuelve arbitrariamente grande. No describe el tiempo o espacio real que llevará resolver un problema para un tamaño específico, sino cómo aumenta en función del crecimiento del tamaño del problema.

    La notación Big O se denota como "O(f(n))", donde "f(n)" representa una función que describe la tasa de crecimiento del algoritmo en términos de "n", el tamaño de entrada.

    A continuación, te presento algunas de las notaciones Big O más comunes y su significado:

    1. O(1) - "Orden constante": Indica que el tiempo de ejecución o el espacio utilizado por el algoritmo no depende del tamaño de entrada. Es decir, el algoritmo siempre toma una cantidad constante de tiempo o espacio para cualquier tamaño de problema.

    2. O(log n) - "Orden logarítmico": Indica que el tiempo de ejecución o el espacio crece en función del logaritmo del tamaño de entrada. Los algoritmos con esta complejidad suelen dividir el problema a la mitad en cada paso.

    3. O(n) - "Orden lineal": Indica que el tiempo de ejecución o el espacio crece de manera proporcional al tamaño de entrada. Por ejemplo, si el tamaño de entrada se duplica, el tiempo de ejecución o el espacio también se duplicará.

    4. O(n log n) - "Orden linealítmico": Es común en algoritmos de ordenamiento eficientes como el algoritmo Quicksort o el algoritmo Merge Sort.

    5. O(n^2) - "Orden cuadrático": Indica que el tiempo de ejecución o el espacio crece cuadráticamente en función del tamaño de entrada. Los algoritmos con esta complejidad suelen tener dos bucles anidados.

    Existen muchas otras notaciones Big O para diferentes tasas de crecimiento, pero estas son algunas de las más comunes.

    Espero que esta explicación haya aclarado tu comprensión sobre la notación Big O. Si tienes preguntas adicionales o necesitas ejemplos específicos, no dudes en preguntar.

    Dimas Antonio Mendoza Lozano

    Dimas Antonio Mendoza Lozano

    studenthace 5 años

    Thanks!

    Alejandro Urrea Giraldo

    Alejandro Urrea Giraldo

    studenthace 5 años

    La notación Big-O hace referencia a la complejidad natural que tiene un algoritmo para resolver un problema.

    Al conocer la complejidad de un algoritmo (mediante la notación Big-O) es posible comparar su eficiencia. Por ejemplo, es posible que dos algoritmos que resuelven el mismo problema, tengan una complejidad diferente, y en función de esta condición, podamos elegir el más eficiente.

    Le comparto un artículo muy interesante que explica muy bien el tema. Espero le sirva

    https://www.campusmvp.es/recursos/post/Rendimiento-de-algoritmos-y-notacion-Big-O.aspx

Curso de Introducción a los Algoritmos de Ordenamiento

Curso de Introducción a los Algoritmos de Ordenamiento

Los algoritmos son clave para desarrollar software que realice una tareas de forma eficiente. La mejor forma de abordar un algoritmo es entender su funcionamiento y analizar su eficiencia para resolver un problema. Conoce cómo funcionan los algoritmos de ordenamiento Bubble Sort y Selection Sort.

Curso de Introducción a los Algoritmos de Ordenamiento
Curso de Introducción a los Algoritmos de Ordenamiento

Curso de Introducción a los Algoritmos de Ordenamiento

Los algoritmos son clave para desarrollar software que realice una tareas de forma eficiente. La mejor forma de abordar un algoritmo es entender su funcionamiento y analizar su eficiencia para resolver un problema. Conoce cómo funcionan los algoritmos de ordenamiento Bubble Sort y Selection Sort.