2005F |
ARTST 102 Algorithmic Visualization |
|
Research Topic
|
Recursion, Recursive Algorithms, Fractals |
|
Description |
In mathematics and computer science, recursion is a particular way
of specifying or constructing a class of objects or an object from a certain
class with the help of a reference to other objects of the class: a recursive
definition defines objects in terms of the already defined objects of the class. An
algorithm is defined as a finite set of well-defined instructions for accomplishing some task which,
given an initial state, will terminate in a corresponding recognizable end-state (1)
A recursive algorithm is an algorithm that calls itself with smaller input values, and
obtains the result for the current input by applying simple operations to the returned value
for the smaller input. In a recursive algorithm, the output of a process is fed back in as the
new input to the process. One can use a recursive algorithm more generally to solve a problem, if that
problem can be solved by utilizing solutions to smaller versions of the same problem. The elements of
a recursively defined set, or the value of a recursively defined function can be obtained by a
recursive algorithm. In general, recursive computer programs require more memory and computation
compared with iterative algorithms, but they are simpler and for many cases
a natural way of thinking about the problem.
(2)
In 1975 Benoit Mandelbrot coined the term fractal to describe self-similar
shapes achieved by the process of recursion. Self-similar shapes can be defined as shapes
that you can zoom in and out of and will ultimately appear the same. Fractals are
useful in describing many types of naturally occurring stuctures that
are complex in nature such as snowflakes, trees, coastlines, mountains, etc. Fractals
are used and perhaps overused in general and for their aesthetic quality.(3)
|
|
|
||
Examples/LinksRecursive Tree |
Ex.1 Natural Numbers recursive definition of N: 0, 1 are in N; if n and n + 1 are in N, then n + 2 is in N; N is the smallest set satisfying the previous two properties. __________________________________________________________________ Ex.2 Simple recursive algorithm: Algorithm 1: Even(positive integer k) Input: k , a positive integer Output: k-th even natural number (the first even being 0) Algorithm: if k = 1, then return 0; else return Even(k-1) + 2 . __________________________________________________________________ Recursion1 Recursion2 Recursive Tree Koch Fractals 2 | |
References/Links |
(1) http://en.wikipedia.org/wiki/Recursive_algorithm#Recursive_algorithms (2) http://www.cs.odu.edu/~toida/nerzic/content/recursive_alg/rec_alg.html (3) http://www.shiffman.net/itp/classes/nature/week07/ |
|
|