¿Qué es un Algoritmo?

< Anterior Siguiente >

Introducción

Un algoritmo es un conjunto de instrucciones paso a paso que se siguen para realizar una tarea específica o resolver un problema. Los algoritmos son fundamentales en la programación, ya que proporcionan una forma sistemática de abordar problemas y desarrollar soluciones eficientes. En esta página, exploraremos qué es un algoritmo, sus características, tipos y algunos ejemplos prácticos.

Definición de Algoritmo

Un algoritmo es una secuencia finita de pasos lógicos diseñados para realizar una tarea o resolver un problema. Cada paso debe ser claro, preciso y ejecutable en un tiempo finito. Los algoritmos se utilizan en diversas disciplinas, incluidas la informática, las matemáticas y la ingeniería.

Características de un Algoritmo

Un buen algoritmo debe cumplir con las siguientes características:

Ejemplo Simple de un Algoritmo

Un ejemplo clásico de algoritmo es el proceso para sumar dos números:

1. Comenzar
2. Leer el primer número (a)
3. Leer el segundo número (b)
4. Calcular la suma de a y b
5. Mostrar el resultado
6. Terminar

Tipos de Algoritmos

Existen varios tipos de algoritmos, según el enfoque y la metodología utilizados para resolver problemas. Algunos de los más comunes son:

Ejemplos Prácticos

A continuación, se presentan algunos ejemplos prácticos de algoritmos en programación:

/* Algoritmo para encontrar el número mayor de dos números */
function encontrarMayor(a, b) {
    if (a > b) {
        return a;
    } else {
        return b;
    }
}
console.log(encontrarMayor(10, 20)); // Resultado: 20

/* Algoritmo de búsqueda lineal */
function busquedaLineal(array, objetivo) {
    for (let i = 0; i < array.length; i++) {
        if (array[i] === objetivo) {
            return i; // Devuelve el índice del objetivo si se encuentra
        }
    }
    return -1; // Devuelve -1 si el objetivo no se encuentra
}
console.log(busquedaLineal([1, 2, 3, 4, 5], 3)); // Resultado: 2

/* Algoritmo de ordenamiento burbuja */
function ordenamientoBurbuja(array) {
    let n = array.length;
    for (let i = 0; i < n - 1; i++) {
        for (let j = 0; j < n - i - 1; j++) {
            if (array[j] > array[j + 1]) {
                // Intercambia los elementos
                let temp = array[j];
                array[j] = array[j + 1];
                array[j + 1] = temp;
            }
        }
    }
    return array;
}
console.log(ordenamientoBurbuja([64, 34, 25, 12, 22, 11, 90])); 
// Resultado: [11, 12, 22, 25, 34, 64, 90]