Algorítmica

La asignatura Algorítmica (cat: Algorismia; eng: Algorithmics) es una asignatura obligatoria de la especialidad de Computación del Grado en Ingeniería Informática impartido por la FIB.

Este blog funciona como web auxiliar de las herramientas disponibles en la Web de la FIB. Los avisos y notas se publicarán en el Racó. La información general (temario, método de evaluación, ...) está disponible en la Guía Docente de la asignatura.

sábado, 25 de junio de 2011

Algunos documentos

Los siguientes enlaces os permiten descargaros las colecciones de problemas de
Introducción a los Esquemas Algorítmicos (IEA) y de Análisis y Diseño de Algoritmos (ADA), dos antiguas asignaturas de la Ingeniería en Informática, muy afines a Algorítmica.
A lo largo del curso trabajaremos con ejercicios de estas colecciones.

También podéis descargaros una versión preliminar pero bastante
completa del libro Algorithms (PDF, 1.9 MB), escrito por S. Dasgupta, C.H. Papadimitriou y U.V. Vazirani. Este libro es una de las referencias de la bibliografía básica de la asignatura.

martes, 7 de junio de 2011

De la Wikipedia

Wikipedia es siempre un buen punto de comienzo. Buscando "algorithm" o "algorithmics" en la Wikipedia en inglés encontramos el siguiente texto:


Algorithm
From Wikipedia, the free encyclopedia


To comply with Wikipedia's guidelines, the introduction of this article may need to be rewritten. Please discuss this issue on the talk page and read the layout guide to make sure the section will be inclusive of all essential details. (April 2011).


Flow chart of an algorithm (Euclid's algorithm) for calculating the greatest common divisor (g.c.d.) of two numbers a and b in locations named A and B. The algorithm proceeds by successive subtractions in two loops: IF the test B ≤ A yields "yes" (or true) (more accurately the number b in location B is less than or equal to the number a in location A) THEN the algorithm specifies B ← B - A (meaning the number b - a replaces the old b). Similarly IF A > B THEN A ← A - B. The process terminates when (the contents of) B is 0, yielding the g.c.d. in A. (Algorithm derived from Scott 2009:13; symbols and drawing style from Tausworthe 1977).
In mathematics and computer science, an algorithm (i /ˈælɡərɪðəm/) is an effective method expressed as a finite list[1] of well-defined instructions[2] for calculating a function.[3] Algorithms are used for calculation, data processing, and automated reasoning.
Starting from an initial state and initial input (perhaps null),[4] the instructions describe a computation that, when executed, will proceed through a finite [5] number of well-defined successive states, eventually producing "output"[6] and terminating at a final ending state. The transition from one state to the next is not necessarily deterministic; some algorithms, known as randomized algorithms, incorporate random input.[7]"