SlideShare una empresa de Scribd logo
Conociendo la Estructura de
Datos
Cola
Recursividad
ÍNDICEC
O
N
T
E
N
I
D
O
Resumen Curricular ………………………………………...pág. 1
Recursividad…………………………………………………pág. 2
Características de la Recursividad…………………………..pág. 3
Ejemplo de la Recursividad…………………………………pág. 4
Publicidad……………………………………………………pág. 5
Colas……………………………………………………..…..pág. 6
Características de la Cola…………………………………... pág. 7
¿Sabías Que? (Cola Lineal)………………………………….pág. 8
Cola Circular………………………………………..……pág. 9, 10
Horóscopo…………………………………………..……...pág. 11
Autora: Sandra Gutiérrez
Resumen Curricular
Sandra Richel Gutiérrez Ríos
Edad: 20 años
Numero Telefónico: 0424-5911558
Correo Electrónico: sandrargr29@gmail.com
Domicilio: Urb. Los Naranjillos, Cabudare.
Egresada del Colegio Inmaculada Concepción.
Título: Bachiller en Ciencias.
Ocupación:
-Estudiante de Ingeniería en Computación.
-Repostera
-Estudiante de Ingles.
Trabajo:
Actualmente trabajo independiente de
comerciante y realizo tortas por encargo, de
igual forma actualizo los Windows de las
computadoras.
Hobbies:
Me gusta mucho compartir en familia, me
gusta mucho comprar ropa y salir a comer, me
apasiona mi carrera y todo lo que tiene que
ver con las computadoras, por otro lado puedo
decir que hacer dulces se me da con facilidad.
Mi Meta:
Graduarme de Ingeniero en Computación y de
la Academia de Inglés.
1
Recursividad
Recursividad se puede definir
como una técnica que permite
que una función se llame así
misma.
Son Recursivos aquellos
algoritmos que, estando
encapsulados dentro de una
función, son llamados desde ella
misma una y otra vez, en
contraposición a los algoritmos
que hacen uso de bucles while,
do-while, for.
Según Monserrat (2018), La
recursividad es la propiedad
mediante la cual un
subprograma o rutina puede
llamarse a sí mismo.
Alternativa diferente para
implementar estructuras de
repetición (ciclos). Se apoya en la
modularidad, pues a través de los
módulos se hacen llamadas
recursivas. Un módulo es recursivo
si, como parte de su definición,
incluye al menos una llamada a sí
mismo (Martínez, R. & Quiroga, E.,
2001) U2.
2
Características de la
Recursividad
-Consta de una parte recursiva, otra iterativa o no
recursiva y una condición de terminación. La
parte recursiva y la condición de terminación
siempre existen. En cambio la parte no recursiva
puede coincidir con la condición de terminación.
-Se debe tomar en cuenta que cuando se use la
recursividad es que es necesario asegurarse que
llega un momento en que no se hace más llamadas
recursivas. Si no se cumple esta condición el
programa no parará nunca.
-La recursividad es la propiedad mediante la cual
un subprograma o rutina puede llamarse a sí
mismo.
-Utilizando la recursividad, la resolución de un
problema se reduce a uno esencialmente igual pero
algo menos complejo.
-Es una alternativa diferente para implementar
estructuras de repetición (ciclos). Los módulos se
hacen llamadas recursivas.
-Se puede usar en toda situación en la cual la
solución pueda ser expresada como una secuencia
de movimientos, pasos o transformaciones
gobernadas por un conjunto de reglas no
ambiguas.
3
Ejemplo de
Recursividad
Dado un entero no negativo x, regresar el factorial de x.
Fact: Entrada n entero no negativo, Salida: entero.
int fact (int n)
{
if (n == 0)
return 1;
else
return fact(n –1) * n;
}
(Es importante determinar un caso base, es decir un punto en el cual
existe una condición por la cual no se requiera volver a llamar a la
misma función).
¿Cómo Funciona la Recursividad?
4
PUBLICIDAD
5
COLASUna cola es una estructura de datos,
caracterizada por ser una secuencia de
elementos en la que la operación de
inserción push se realiza por un
extremo y la operación de extracción
pop por el otro. También se le llama
estructura FIFO (del inglés First In
First Out), debido a que el primer
elemento en entrar será también el
primero en salir.
Las colas se utilizan en sistemas
informáticos, transportes y
operaciones de investigación (entre
otros), dónde los objetos, personas o
eventos son tomados como datos que
se almacenan y se guardan mediante
colas para su posterior procesamiento.
Este tipo de estructura de datos
abstracta se implementa en lenguajes
orientados a objetos mediante clases,
en forma de listas enlazadas.
Las colas, al igual que las pilas,
resultan de aplicación habitual en
muchos problemas informáticos.
Quizás la aplicación más común de las
colas es la organización de tareas de un
ordenador.
6
+
Características de la
Cola
-Se utilizan en sistemas informáticos, transportes y operaciones de
investigación (entre otros), donde los objetos, personas o eventos
son tomados como datos que se almacenan y se guardan mediante
colas para su posterior procesamiento.
-La particularidad de una estructura de datos de cola es el hecho de
que sólo podemos acceder al primer y al último elemento de la
estructura. Así mismo, los elementos sólo se pueden eliminar por el
principio y sólo se pueden añadir por el final de la cola.
-Tienen una capacidad específica. Por muchos elementos que
contengan siempre se puede añadir un elemento más y en caso de
estar vacía borrar un elemento sería imposible hasta que no se
añade un nuevo elemento. A la hora de añadir un elemento
podríamos darle una mayor importancia a unos elementos que a
otros (un cargo VIP) y para ello se crea un tipo de cola especial que
es la cola de prioridad.
7
¿Sabías Qué?
La Cola Lineal
La cola lineal es un tipo de
almacenamiento creado por el
usuario que trabaja bajo la
técnica FIFO (primero en entrar
primero en salir).
Representación
Gráfica
Algoritmo para Crear
Esta operación consistirá en definir la
variable del tipo nuevo declarado, Cola
(array que permitirá almacenar la
información y las variables que apuntarán
a los extremos de la estructura) e iniciar
los valores de manera que se indique
explícitamente que la cola, tras la
creación, está vacía.
(1) Variables
queue: Pila;
(2) Asignación de pila vacía
queue.ini ←0
queue.fin ←0
Esta operación, en C++, se convierte en el
constructor por defecto:
Cola::Cola (void)
{
ini = 0;
fin = 0;
}
Algoritmo para
Insertar
Si A=máximo entonces
mensaje (overflow)
en caso contrario
A<-- A+1
cola[A]<-- valor
Algoritmo para
Eliminar
Si A&ltF entonces
mensaje (underflow) en caso contrario
F <– F+1 x <– cola[F]
¡Esto y mucho
más!
8
La Cola Circular
Una cola circular o anillo es
una estructura de datos en
la que los elementos están
de forma circular y cada
elemento tiene un sucesor y
un predecesor.
Algoritmo para
Crear
Esta operación consistirá en definir la variable de tipo array que permitirá
almacenar la información y las variables que apuntarán a los extremos de la
estructura. Además, hay que indicar explícitamente que la cola, trás la creación,
está vacía.
(1) Declaraciones:
Cola : array [1..n] de T
inicio, fin: 1..n
(2)Cola vacía:
inicio <-- 1
fin <-- 1 Comprobar si la cola está vacía:
Con las condiciones establecidas, basta comprobar si inicio = fin:
si Cola.inicio = Cola.fin entonces devolver(cierto)
sino devolver(falso)
Función siguiente:
Con esta función obtenemos el índice del siguiente elemento a i, se trata de calcular
el resto de ese i entre el máximo índice de la cola, algo así:
(Siguiente := i MOD n + 1).
10
Algoritmo para
Eliminar
Como se ve la eliminación no borra nada 'físicamente', sólo se encarga
de actualizar el puntero 'Cola.inicio' en una posición y devolver el
valor x como mucho, aunque esto último no sea estrictamente
necesario. Aunque esa posición aun contenga datos será considerada
como vacía a efectos del otro puntero 'Cola.final'.
si Vacia(Cola) entonces "Error. Cola vacía."
sino
x <-- Primero(Cola)
incrementar(Cola.inicio)
devolver(x)
fin_sino
Algoritmo para
Inserta
Si (F+1=A) ó (F=1 y A=máximo) entonces
mensaje (overflow)
en caso contrario
inicio
si A=máximo entonces
A<--1
cola[A]<-- valor
en caso contrario
A <--A+1
cola[A]<-- valor
si F=0 entonces
F <-- 1
fin
11
12

Más contenido relacionado

La actualidad más candente

Método por plegamiento Hash
Método por plegamiento HashMétodo por plegamiento Hash
Método por plegamiento Hash
Christopher Bonilla Noguera
 
Ordenamiento en C++
Ordenamiento en C++Ordenamiento en C++
Ordenamiento en C++
compumet sac
 
Pilas y colas
Pilas y colasPilas y colas
Pilas y colas
arrietaevelio
 
Tipos de Datos Abstractos (TDA)
Tipos de Datos Abstractos (TDA)Tipos de Datos Abstractos (TDA)
Tipos de Datos Abstractos (TDA)
Alvaro Andrade Enriquez
 
Tutorial de JFLAP
Tutorial de JFLAPTutorial de JFLAP
Tutorial de JFLAP
Sara Martínez Gómez
 
Tipos de listas en estructura de datos
Tipos de listas en estructura de datosTipos de listas en estructura de datos
Tipos de listas en estructura de datos
Carlos Alberto Cuervo Cardenas
 
Propiedades del algebra de boole
Propiedades del algebra de boolePropiedades del algebra de boole
Propiedades del algebra de boole
Arturo Rodriguez Leon
 
Aplicaciones de los árboles y grafos
Aplicaciones de los árboles y grafosAplicaciones de los árboles y grafos
Aplicaciones de los árboles y grafos
Hugo Arturo Gonzalez Macias
 
Linea de tiempo de la historia de los lenguajes de programacion
Linea de tiempo de la historia de los lenguajes de programacionLinea de tiempo de la historia de los lenguajes de programacion
Linea de tiempo de la historia de los lenguajes de programacion
Jesus22barrera
 
Tutorial PSEINT
Tutorial PSEINT Tutorial PSEINT
Tutorial PSEINT
UPT "JOSÉ FELIX RIBAS"
 
2.1 metodo de intervalo
2.1 metodo de intervalo2.1 metodo de intervalo
2.1 metodo de intervalo
morenito9001
 
Manejo de memoria
Manejo de memoriaManejo de memoria
Manejo de memoria
Valentin Manzano
 
Tutorial algoritmo estructuras ciclicas
Tutorial algoritmo estructuras ciclicasTutorial algoritmo estructuras ciclicas
Tutorial algoritmo estructuras ciclicas
Michele André
 
Poo 2 colab, presentación que muestra implementa colaboración entre clases
Poo 2 colab, presentación que muestra implementa colaboración entre clasesPoo 2 colab, presentación que muestra implementa colaboración entre clases
Poo 2 colab, presentación que muestra implementa colaboración entre clases
jlmanmons
 
Introduccion a la administracion de los procesos y el procesador (S.O)
Introduccion a la administracion de los procesos y el procesador (S.O)Introduccion a la administracion de los procesos y el procesador (S.O)
Introduccion a la administracion de los procesos y el procesador (S.O)
Javier Alvarez
 
Ejercicios resueltos grafos
Ejercicios resueltos grafosEjercicios resueltos grafos
Ejercicios resueltos grafos
TERE FERNÁNDEZ
 
control de concurrencia
control de concurrenciacontrol de concurrencia
control de concurrencia
Jose Guadalupe Couoh Dzul
 
Método de ordenamiento por selección (selection sort
Método de ordenamiento por selección (selection sortMétodo de ordenamiento por selección (selection sort
Método de ordenamiento por selección (selection sort
linkinpark03
 
Memoria dinamica
Memoria dinamicaMemoria dinamica
Memoria dinamica
gusolis93
 
Listas de adyacencia
Listas de adyacenciaListas de adyacencia
Listas de adyacencia
leidy2220
 

La actualidad más candente (20)

Método por plegamiento Hash
Método por plegamiento HashMétodo por plegamiento Hash
Método por plegamiento Hash
 
Ordenamiento en C++
Ordenamiento en C++Ordenamiento en C++
Ordenamiento en C++
 
Pilas y colas
Pilas y colasPilas y colas
Pilas y colas
 
Tipos de Datos Abstractos (TDA)
Tipos de Datos Abstractos (TDA)Tipos de Datos Abstractos (TDA)
Tipos de Datos Abstractos (TDA)
 
Tutorial de JFLAP
Tutorial de JFLAPTutorial de JFLAP
Tutorial de JFLAP
 
Tipos de listas en estructura de datos
Tipos de listas en estructura de datosTipos de listas en estructura de datos
Tipos de listas en estructura de datos
 
Propiedades del algebra de boole
Propiedades del algebra de boolePropiedades del algebra de boole
Propiedades del algebra de boole
 
Aplicaciones de los árboles y grafos
Aplicaciones de los árboles y grafosAplicaciones de los árboles y grafos
Aplicaciones de los árboles y grafos
 
Linea de tiempo de la historia de los lenguajes de programacion
Linea de tiempo de la historia de los lenguajes de programacionLinea de tiempo de la historia de los lenguajes de programacion
Linea de tiempo de la historia de los lenguajes de programacion
 
Tutorial PSEINT
Tutorial PSEINT Tutorial PSEINT
Tutorial PSEINT
 
2.1 metodo de intervalo
2.1 metodo de intervalo2.1 metodo de intervalo
2.1 metodo de intervalo
 
Manejo de memoria
Manejo de memoriaManejo de memoria
Manejo de memoria
 
Tutorial algoritmo estructuras ciclicas
Tutorial algoritmo estructuras ciclicasTutorial algoritmo estructuras ciclicas
Tutorial algoritmo estructuras ciclicas
 
Poo 2 colab, presentación que muestra implementa colaboración entre clases
Poo 2 colab, presentación que muestra implementa colaboración entre clasesPoo 2 colab, presentación que muestra implementa colaboración entre clases
Poo 2 colab, presentación que muestra implementa colaboración entre clases
 
Introduccion a la administracion de los procesos y el procesador (S.O)
Introduccion a la administracion de los procesos y el procesador (S.O)Introduccion a la administracion de los procesos y el procesador (S.O)
Introduccion a la administracion de los procesos y el procesador (S.O)
 
Ejercicios resueltos grafos
Ejercicios resueltos grafosEjercicios resueltos grafos
Ejercicios resueltos grafos
 
control de concurrencia
control de concurrenciacontrol de concurrencia
control de concurrencia
 
Método de ordenamiento por selección (selection sort
Método de ordenamiento por selección (selection sortMétodo de ordenamiento por selección (selection sort
Método de ordenamiento por selección (selection sort
 
Memoria dinamica
Memoria dinamicaMemoria dinamica
Memoria dinamica
 
Listas de adyacencia
Listas de adyacenciaListas de adyacencia
Listas de adyacencia
 

Similar a Recursividad y Cola (Estructura de Datos)

Tarea 3
Tarea 3Tarea 3
Tarea 3
jose poleo
 
Tarea 3
Tarea 3Tarea 3
Tarea 3
jose poleo
 
C++
C++C++
Programación en c++
Programación en c++Programación en c++
Cplus
CplusCplus
9 Colas
9 Colas9 Colas
9 Colas
UVM
 
Recolección de basura
Recolección de basuraRecolección de basura
Recolección de basura
Manuel Alejandro Hernandez Sanchez
 
Recursividad
RecursividadRecursividad
Recursividad
TAtiizz Villalobos
 
Tda cola
Tda colaTda cola
Tda cola
Daniel Macias
 
Usando Twisted para hacer aplicaciones de escritorio no bloqueantes
Usando Twisted para hacer aplicaciones de escritorio no bloqueantesUsando Twisted para hacer aplicaciones de escritorio no bloqueantes
Usando Twisted para hacer aplicaciones de escritorio no bloqueantes
Martín Volpe
 
Estructura datos unidad-2_y_3
Estructura datos unidad-2_y_3Estructura datos unidad-2_y_3
Estructura datos unidad-2_y_3
marioUitzil
 
Estructura datos unidad-2_y_3
Estructura datos unidad-2_y_3Estructura datos unidad-2_y_3
Estructura datos unidad-2_y_3
Jhon_Marjorie
 
Principios del Diseño Orientado a Objetos (OOD) Aplicados en C
Principios del Diseño Orientado a Objetos (OOD) Aplicados en CPrincipios del Diseño Orientado a Objetos (OOD) Aplicados en C
Principios del Diseño Orientado a Objetos (OOD) Aplicados en C
Leandro Francucci
 
Matlab (1)
Matlab (1)Matlab (1)
Matlab (1)
numpad
 
Matlab
MatlabMatlab
Matlab
ford81
 
Informatica
InformaticaInformatica
Tap04 poo
Tap04 pooTap04 poo
DIAPOSITIVAS DE LA UNIDAD 3
DIAPOSITIVAS DE LA UNIDAD 3DIAPOSITIVAS DE LA UNIDAD 3
DIAPOSITIVAS DE LA UNIDAD 3
efrain_rap
 
Capítulo 3 Algoritmos recursivos.pdf
Capítulo 3 Algoritmos recursivos.pdfCapítulo 3 Algoritmos recursivos.pdf
Capítulo 3 Algoritmos recursivos.pdf
Igor Rodriguez
 
Mprogintc++ prog(3)
Mprogintc++ prog(3)Mprogintc++ prog(3)
Mprogintc++ prog(3)
desi2907
 

Similar a Recursividad y Cola (Estructura de Datos) (20)

Tarea 3
Tarea 3Tarea 3
Tarea 3
 
Tarea 3
Tarea 3Tarea 3
Tarea 3
 
C++
C++C++
C++
 
Programación en c++
Programación en c++Programación en c++
Programación en c++
 
Cplus
CplusCplus
Cplus
 
9 Colas
9 Colas9 Colas
9 Colas
 
Recolección de basura
Recolección de basuraRecolección de basura
Recolección de basura
 
Recursividad
RecursividadRecursividad
Recursividad
 
Tda cola
Tda colaTda cola
Tda cola
 
Usando Twisted para hacer aplicaciones de escritorio no bloqueantes
Usando Twisted para hacer aplicaciones de escritorio no bloqueantesUsando Twisted para hacer aplicaciones de escritorio no bloqueantes
Usando Twisted para hacer aplicaciones de escritorio no bloqueantes
 
Estructura datos unidad-2_y_3
Estructura datos unidad-2_y_3Estructura datos unidad-2_y_3
Estructura datos unidad-2_y_3
 
Estructura datos unidad-2_y_3
Estructura datos unidad-2_y_3Estructura datos unidad-2_y_3
Estructura datos unidad-2_y_3
 
Principios del Diseño Orientado a Objetos (OOD) Aplicados en C
Principios del Diseño Orientado a Objetos (OOD) Aplicados en CPrincipios del Diseño Orientado a Objetos (OOD) Aplicados en C
Principios del Diseño Orientado a Objetos (OOD) Aplicados en C
 
Matlab (1)
Matlab (1)Matlab (1)
Matlab (1)
 
Matlab
MatlabMatlab
Matlab
 
Informatica
InformaticaInformatica
Informatica
 
Tap04 poo
Tap04 pooTap04 poo
Tap04 poo
 
DIAPOSITIVAS DE LA UNIDAD 3
DIAPOSITIVAS DE LA UNIDAD 3DIAPOSITIVAS DE LA UNIDAD 3
DIAPOSITIVAS DE LA UNIDAD 3
 
Capítulo 3 Algoritmos recursivos.pdf
Capítulo 3 Algoritmos recursivos.pdfCapítulo 3 Algoritmos recursivos.pdf
Capítulo 3 Algoritmos recursivos.pdf
 
Mprogintc++ prog(3)
Mprogintc++ prog(3)Mprogintc++ prog(3)
Mprogintc++ prog(3)
 

Más de sandra gutierrez

Manejo de Memoria
Manejo de MemoriaManejo de Memoria
Manejo de Memoria
sandra gutierrez
 
Base de datos avanzado (matriz foda)
Base de datos avanzado (matriz foda)Base de datos avanzado (matriz foda)
Base de datos avanzado (matriz foda)
sandra gutierrez
 
TCP/IP y OSI (Revista Digital)
 TCP/IP y OSI (Revista Digital) TCP/IP y OSI (Revista Digital)
TCP/IP y OSI (Revista Digital)
sandra gutierrez
 
DESARROLLO SUSTENTABLE Y SOSTENIBLE
DESARROLLO SUSTENTABLE Y SOSTENIBLEDESARROLLO SUSTENTABLE Y SOSTENIBLE
DESARROLLO SUSTENTABLE Y SOSTENIBLE
sandra gutierrez
 
DESARROLLO SUSTENTABLE Y SOSTENIBLE
DESARROLLO SUSTENTABLE Y SOSTENIBLEDESARROLLO SUSTENTABLE Y SOSTENIBLE
DESARROLLO SUSTENTABLE Y SOSTENIBLE
sandra gutierrez
 
Conociendo los Lenguajes de Programacion
Conociendo los Lenguajes de ProgramacionConociendo los Lenguajes de Programacion
Conociendo los Lenguajes de Programacion
sandra gutierrez
 
Diagrama Entidad Relacion
Diagrama Entidad RelacionDiagrama Entidad Relacion
Diagrama Entidad Relacion
sandra gutierrez
 
Conociendo los Lenguajes de Programacion
Conociendo los Lenguajes de ProgramacionConociendo los Lenguajes de Programacion
Conociendo los Lenguajes de Programacion
sandra gutierrez
 
Diseño Estructurado
Diseño EstructuradoDiseño Estructurado
Diseño Estructurado
sandra gutierrez
 
LENGUAJES FORMALES
LENGUAJES FORMALESLENGUAJES FORMALES
LENGUAJES FORMALES
sandra gutierrez
 
LIDERAZGO
LIDERAZGOLIDERAZGO
LIDERAZGO
sandra gutierrez
 
Practica III ELECTRONICA I
Practica III ELECTRONICA IPractica III ELECTRONICA I
Practica III ELECTRONICA I
sandra gutierrez
 
Participacion ciudana en Materia ambiental
Participacion ciudana en Materia ambientalParticipacion ciudana en Materia ambiental
Participacion ciudana en Materia ambiental
sandra gutierrez
 
La Ecologia como fuente del Derecho Ecologico
La Ecologia como fuente del Derecho EcologicoLa Ecologia como fuente del Derecho Ecologico
La Ecologia como fuente del Derecho Ecologico
sandra gutierrez
 
Derecho Adjetivo y Sustantivo
Derecho Adjetivo y SustantivoDerecho Adjetivo y Sustantivo
Derecho Adjetivo y Sustantivo
sandra gutierrez
 
Plan de negocios 1
Plan de negocios 1Plan de negocios 1
Plan de negocios 1
sandra gutierrez
 
Agrario
AgrarioAgrario
Lenguaje c++
Lenguaje c++Lenguaje c++
Lenguaje c++
sandra gutierrez
 
Sistema de coordenadas polares
Sistema de coordenadas polaresSistema de coordenadas polares
Sistema de coordenadas polares
sandra gutierrez
 

Más de sandra gutierrez (19)

Manejo de Memoria
Manejo de MemoriaManejo de Memoria
Manejo de Memoria
 
Base de datos avanzado (matriz foda)
Base de datos avanzado (matriz foda)Base de datos avanzado (matriz foda)
Base de datos avanzado (matriz foda)
 
TCP/IP y OSI (Revista Digital)
 TCP/IP y OSI (Revista Digital) TCP/IP y OSI (Revista Digital)
TCP/IP y OSI (Revista Digital)
 
DESARROLLO SUSTENTABLE Y SOSTENIBLE
DESARROLLO SUSTENTABLE Y SOSTENIBLEDESARROLLO SUSTENTABLE Y SOSTENIBLE
DESARROLLO SUSTENTABLE Y SOSTENIBLE
 
DESARROLLO SUSTENTABLE Y SOSTENIBLE
DESARROLLO SUSTENTABLE Y SOSTENIBLEDESARROLLO SUSTENTABLE Y SOSTENIBLE
DESARROLLO SUSTENTABLE Y SOSTENIBLE
 
Conociendo los Lenguajes de Programacion
Conociendo los Lenguajes de ProgramacionConociendo los Lenguajes de Programacion
Conociendo los Lenguajes de Programacion
 
Diagrama Entidad Relacion
Diagrama Entidad RelacionDiagrama Entidad Relacion
Diagrama Entidad Relacion
 
Conociendo los Lenguajes de Programacion
Conociendo los Lenguajes de ProgramacionConociendo los Lenguajes de Programacion
Conociendo los Lenguajes de Programacion
 
Diseño Estructurado
Diseño EstructuradoDiseño Estructurado
Diseño Estructurado
 
LENGUAJES FORMALES
LENGUAJES FORMALESLENGUAJES FORMALES
LENGUAJES FORMALES
 
LIDERAZGO
LIDERAZGOLIDERAZGO
LIDERAZGO
 
Practica III ELECTRONICA I
Practica III ELECTRONICA IPractica III ELECTRONICA I
Practica III ELECTRONICA I
 
Participacion ciudana en Materia ambiental
Participacion ciudana en Materia ambientalParticipacion ciudana en Materia ambiental
Participacion ciudana en Materia ambiental
 
La Ecologia como fuente del Derecho Ecologico
La Ecologia como fuente del Derecho EcologicoLa Ecologia como fuente del Derecho Ecologico
La Ecologia como fuente del Derecho Ecologico
 
Derecho Adjetivo y Sustantivo
Derecho Adjetivo y SustantivoDerecho Adjetivo y Sustantivo
Derecho Adjetivo y Sustantivo
 
Plan de negocios 1
Plan de negocios 1Plan de negocios 1
Plan de negocios 1
 
Agrario
AgrarioAgrario
Agrario
 
Lenguaje c++
Lenguaje c++Lenguaje c++
Lenguaje c++
 
Sistema de coordenadas polares
Sistema de coordenadas polaresSistema de coordenadas polares
Sistema de coordenadas polares
 

Último

3° SES COMU LUN10 CUENTO DIA DEL PADRE 933623393 PROF YESSENIA (1).docx
3° SES COMU LUN10  CUENTO DIA DEL PADRE  933623393 PROF YESSENIA (1).docx3° SES COMU LUN10  CUENTO DIA DEL PADRE  933623393 PROF YESSENIA (1).docx
3° SES COMU LUN10 CUENTO DIA DEL PADRE 933623393 PROF YESSENIA (1).docx
rosannatasaycoyactay
 
Sesión: El espiritismo desenmascarado.pdf
Sesión: El espiritismo desenmascarado.pdfSesión: El espiritismo desenmascarado.pdf
Sesión: El espiritismo desenmascarado.pdf
https://gramadal.wordpress.com/
 
Camus, Albert - El Extranjero.pdf
Camus, Albert -        El Extranjero.pdfCamus, Albert -        El Extranjero.pdf
Camus, Albert - El Extranjero.pdf
AlexDeLonghi
 
Mundo ABC Examen 1 Grado- Tercer Trimestre.pdf
Mundo ABC Examen 1 Grado- Tercer Trimestre.pdfMundo ABC Examen 1 Grado- Tercer Trimestre.pdf
Mundo ABC Examen 1 Grado- Tercer Trimestre.pdf
ViriEsteva
 
Inteligencia Artificial para Docentes HIA Ccesa007.pdf
Inteligencia Artificial para Docentes  HIA  Ccesa007.pdfInteligencia Artificial para Docentes  HIA  Ccesa007.pdf
Inteligencia Artificial para Docentes HIA Ccesa007.pdf
Demetrio Ccesa Rayme
 
Presentación Curso C. Diferencial - 2024-1.pdf
Presentación Curso C. Diferencial - 2024-1.pdfPresentación Curso C. Diferencial - 2024-1.pdf
Presentación Curso C. Diferencial - 2024-1.pdf
H4RV3YH3RN4ND3Z
 
pueblos originarios de chile presentacion twinkl.pptx
pueblos originarios de chile presentacion twinkl.pptxpueblos originarios de chile presentacion twinkl.pptx
pueblos originarios de chile presentacion twinkl.pptx
RAMIREZNICOLE
 
Las diversas Sociedades Mercantiles Mexico.pdf
Las diversas Sociedades Mercantiles Mexico.pdfLas diversas Sociedades Mercantiles Mexico.pdf
Las diversas Sociedades Mercantiles Mexico.pdf
La Paradoja educativa
 
Power Point: El espiritismo desenmascarado
Power Point: El espiritismo desenmascaradoPower Point: El espiritismo desenmascarado
Power Point: El espiritismo desenmascarado
https://gramadal.wordpress.com/
 
Dosificación de los aprendizajes U4_Me gustan los animales_Parvulos 1_2_3.pdf
Dosificación de los aprendizajes U4_Me gustan los animales_Parvulos 1_2_3.pdfDosificación de los aprendizajes U4_Me gustan los animales_Parvulos 1_2_3.pdf
Dosificación de los aprendizajes U4_Me gustan los animales_Parvulos 1_2_3.pdf
KarenRuano6
 
Maristella Svampa-La sociedad excluyente.pdf
Maristella Svampa-La sociedad excluyente.pdfMaristella Svampa-La sociedad excluyente.pdf
Maristella Svampa-La sociedad excluyente.pdf
belbarcala
 
Radicación con expresiones algebraicas para 9no grado
Radicación con expresiones algebraicas para 9no gradoRadicación con expresiones algebraicas para 9no grado
Radicación con expresiones algebraicas para 9no grado
perezducasaarmando
 
Guia para Docentes como usar ChatGPT Mineduc Ccesa007.pdf
Guia para Docentes como usar ChatGPT  Mineduc Ccesa007.pdfGuia para Docentes como usar ChatGPT  Mineduc Ccesa007.pdf
Guia para Docentes como usar ChatGPT Mineduc Ccesa007.pdf
Demetrio Ccesa Rayme
 
PANDERETAS DECORADAS CON MOTIVOS DE LA RIOJA
PANDERETAS DECORADAS CON MOTIVOS DE LA RIOJAPANDERETAS DECORADAS CON MOTIVOS DE LA RIOJA
PANDERETAS DECORADAS CON MOTIVOS DE LA RIOJA
estroba5
 
Planificación Ejemplo con la metodología TPACK
Planificación Ejemplo con la metodología  TPACKPlanificación Ejemplo con la metodología  TPACK
Planificación Ejemplo con la metodología TPACK
ssusera6697f
 
RETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docx
RETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docxRETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docx
RETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docx
100078171
 
efemérides del mes de junio 2024 (1).pptx
efemérides del mes de junio 2024 (1).pptxefemérides del mes de junio 2024 (1).pptx
efemérides del mes de junio 2024 (1).pptx
acgtz913
 
La vida de Martin Miguel de Güemes para niños de primaria
La vida de Martin Miguel de Güemes para niños de primariaLa vida de Martin Miguel de Güemes para niños de primaria
La vida de Martin Miguel de Güemes para niños de primaria
EricaCouly1
 
Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinaria). UCLM
Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinaria). UCLMExamen de Selectividad. Geografía junio 2024 (Convocatoria Ordinaria). UCLM
Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinaria). UCLM
Juan Martín Martín
 

Último (20)

3° SES COMU LUN10 CUENTO DIA DEL PADRE 933623393 PROF YESSENIA (1).docx
3° SES COMU LUN10  CUENTO DIA DEL PADRE  933623393 PROF YESSENIA (1).docx3° SES COMU LUN10  CUENTO DIA DEL PADRE  933623393 PROF YESSENIA (1).docx
3° SES COMU LUN10 CUENTO DIA DEL PADRE 933623393 PROF YESSENIA (1).docx
 
Sesión: El espiritismo desenmascarado.pdf
Sesión: El espiritismo desenmascarado.pdfSesión: El espiritismo desenmascarado.pdf
Sesión: El espiritismo desenmascarado.pdf
 
Camus, Albert - El Extranjero.pdf
Camus, Albert -        El Extranjero.pdfCamus, Albert -        El Extranjero.pdf
Camus, Albert - El Extranjero.pdf
 
Mundo ABC Examen 1 Grado- Tercer Trimestre.pdf
Mundo ABC Examen 1 Grado- Tercer Trimestre.pdfMundo ABC Examen 1 Grado- Tercer Trimestre.pdf
Mundo ABC Examen 1 Grado- Tercer Trimestre.pdf
 
Inteligencia Artificial para Docentes HIA Ccesa007.pdf
Inteligencia Artificial para Docentes  HIA  Ccesa007.pdfInteligencia Artificial para Docentes  HIA  Ccesa007.pdf
Inteligencia Artificial para Docentes HIA Ccesa007.pdf
 
Presentación Curso C. Diferencial - 2024-1.pdf
Presentación Curso C. Diferencial - 2024-1.pdfPresentación Curso C. Diferencial - 2024-1.pdf
Presentación Curso C. Diferencial - 2024-1.pdf
 
pueblos originarios de chile presentacion twinkl.pptx
pueblos originarios de chile presentacion twinkl.pptxpueblos originarios de chile presentacion twinkl.pptx
pueblos originarios de chile presentacion twinkl.pptx
 
Las diversas Sociedades Mercantiles Mexico.pdf
Las diversas Sociedades Mercantiles Mexico.pdfLas diversas Sociedades Mercantiles Mexico.pdf
Las diversas Sociedades Mercantiles Mexico.pdf
 
Power Point: El espiritismo desenmascarado
Power Point: El espiritismo desenmascaradoPower Point: El espiritismo desenmascarado
Power Point: El espiritismo desenmascarado
 
Dosificación de los aprendizajes U4_Me gustan los animales_Parvulos 1_2_3.pdf
Dosificación de los aprendizajes U4_Me gustan los animales_Parvulos 1_2_3.pdfDosificación de los aprendizajes U4_Me gustan los animales_Parvulos 1_2_3.pdf
Dosificación de los aprendizajes U4_Me gustan los animales_Parvulos 1_2_3.pdf
 
Maristella Svampa-La sociedad excluyente.pdf
Maristella Svampa-La sociedad excluyente.pdfMaristella Svampa-La sociedad excluyente.pdf
Maristella Svampa-La sociedad excluyente.pdf
 
Radicación con expresiones algebraicas para 9no grado
Radicación con expresiones algebraicas para 9no gradoRadicación con expresiones algebraicas para 9no grado
Radicación con expresiones algebraicas para 9no grado
 
Guia para Docentes como usar ChatGPT Mineduc Ccesa007.pdf
Guia para Docentes como usar ChatGPT  Mineduc Ccesa007.pdfGuia para Docentes como usar ChatGPT  Mineduc Ccesa007.pdf
Guia para Docentes como usar ChatGPT Mineduc Ccesa007.pdf
 
PANDERETAS DECORADAS CON MOTIVOS DE LA RIOJA
PANDERETAS DECORADAS CON MOTIVOS DE LA RIOJAPANDERETAS DECORADAS CON MOTIVOS DE LA RIOJA
PANDERETAS DECORADAS CON MOTIVOS DE LA RIOJA
 
Planificación Ejemplo con la metodología TPACK
Planificación Ejemplo con la metodología  TPACKPlanificación Ejemplo con la metodología  TPACK
Planificación Ejemplo con la metodología TPACK
 
RETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docx
RETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docxRETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docx
RETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docx
 
efemérides del mes de junio 2024 (1).pptx
efemérides del mes de junio 2024 (1).pptxefemérides del mes de junio 2024 (1).pptx
efemérides del mes de junio 2024 (1).pptx
 
A VISITA DO SENHOR BISPO .
A VISITA DO SENHOR BISPO                .A VISITA DO SENHOR BISPO                .
A VISITA DO SENHOR BISPO .
 
La vida de Martin Miguel de Güemes para niños de primaria
La vida de Martin Miguel de Güemes para niños de primariaLa vida de Martin Miguel de Güemes para niños de primaria
La vida de Martin Miguel de Güemes para niños de primaria
 
Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinaria). UCLM
Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinaria). UCLMExamen de Selectividad. Geografía junio 2024 (Convocatoria Ordinaria). UCLM
Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinaria). UCLM
 

Recursividad y Cola (Estructura de Datos)

  • 1. Conociendo la Estructura de Datos Cola Recursividad
  • 2. ÍNDICEC O N T E N I D O Resumen Curricular ………………………………………...pág. 1 Recursividad…………………………………………………pág. 2 Características de la Recursividad…………………………..pág. 3 Ejemplo de la Recursividad…………………………………pág. 4 Publicidad……………………………………………………pág. 5 Colas……………………………………………………..…..pág. 6 Características de la Cola…………………………………... pág. 7 ¿Sabías Que? (Cola Lineal)………………………………….pág. 8 Cola Circular………………………………………..……pág. 9, 10 Horóscopo…………………………………………..……...pág. 11 Autora: Sandra Gutiérrez
  • 3. Resumen Curricular Sandra Richel Gutiérrez Ríos Edad: 20 años Numero Telefónico: 0424-5911558 Correo Electrónico: sandrargr29@gmail.com Domicilio: Urb. Los Naranjillos, Cabudare. Egresada del Colegio Inmaculada Concepción. Título: Bachiller en Ciencias. Ocupación: -Estudiante de Ingeniería en Computación. -Repostera -Estudiante de Ingles. Trabajo: Actualmente trabajo independiente de comerciante y realizo tortas por encargo, de igual forma actualizo los Windows de las computadoras. Hobbies: Me gusta mucho compartir en familia, me gusta mucho comprar ropa y salir a comer, me apasiona mi carrera y todo lo que tiene que ver con las computadoras, por otro lado puedo decir que hacer dulces se me da con facilidad. Mi Meta: Graduarme de Ingeniero en Computación y de la Academia de Inglés. 1
  • 4. Recursividad Recursividad se puede definir como una técnica que permite que una función se llame así misma. Son Recursivos aquellos algoritmos que, estando encapsulados dentro de una función, son llamados desde ella misma una y otra vez, en contraposición a los algoritmos que hacen uso de bucles while, do-while, for. Según Monserrat (2018), La recursividad es la propiedad mediante la cual un subprograma o rutina puede llamarse a sí mismo. Alternativa diferente para implementar estructuras de repetición (ciclos). Se apoya en la modularidad, pues a través de los módulos se hacen llamadas recursivas. Un módulo es recursivo si, como parte de su definición, incluye al menos una llamada a sí mismo (Martínez, R. & Quiroga, E., 2001) U2. 2
  • 5. Características de la Recursividad -Consta de una parte recursiva, otra iterativa o no recursiva y una condición de terminación. La parte recursiva y la condición de terminación siempre existen. En cambio la parte no recursiva puede coincidir con la condición de terminación. -Se debe tomar en cuenta que cuando se use la recursividad es que es necesario asegurarse que llega un momento en que no se hace más llamadas recursivas. Si no se cumple esta condición el programa no parará nunca. -La recursividad es la propiedad mediante la cual un subprograma o rutina puede llamarse a sí mismo. -Utilizando la recursividad, la resolución de un problema se reduce a uno esencialmente igual pero algo menos complejo. -Es una alternativa diferente para implementar estructuras de repetición (ciclos). Los módulos se hacen llamadas recursivas. -Se puede usar en toda situación en la cual la solución pueda ser expresada como una secuencia de movimientos, pasos o transformaciones gobernadas por un conjunto de reglas no ambiguas. 3
  • 6. Ejemplo de Recursividad Dado un entero no negativo x, regresar el factorial de x. Fact: Entrada n entero no negativo, Salida: entero. int fact (int n) { if (n == 0) return 1; else return fact(n –1) * n; } (Es importante determinar un caso base, es decir un punto en el cual existe una condición por la cual no se requiera volver a llamar a la misma función). ¿Cómo Funciona la Recursividad? 4
  • 8. COLASUna cola es una estructura de datos, caracterizada por ser una secuencia de elementos en la que la operación de inserción push se realiza por un extremo y la operación de extracción pop por el otro. También se le llama estructura FIFO (del inglés First In First Out), debido a que el primer elemento en entrar será también el primero en salir. Las colas se utilizan en sistemas informáticos, transportes y operaciones de investigación (entre otros), dónde los objetos, personas o eventos son tomados como datos que se almacenan y se guardan mediante colas para su posterior procesamiento. Este tipo de estructura de datos abstracta se implementa en lenguajes orientados a objetos mediante clases, en forma de listas enlazadas. Las colas, al igual que las pilas, resultan de aplicación habitual en muchos problemas informáticos. Quizás la aplicación más común de las colas es la organización de tareas de un ordenador. 6
  • 9. + Características de la Cola -Se utilizan en sistemas informáticos, transportes y operaciones de investigación (entre otros), donde los objetos, personas o eventos son tomados como datos que se almacenan y se guardan mediante colas para su posterior procesamiento. -La particularidad de una estructura de datos de cola es el hecho de que sólo podemos acceder al primer y al último elemento de la estructura. Así mismo, los elementos sólo se pueden eliminar por el principio y sólo se pueden añadir por el final de la cola. -Tienen una capacidad específica. Por muchos elementos que contengan siempre se puede añadir un elemento más y en caso de estar vacía borrar un elemento sería imposible hasta que no se añade un nuevo elemento. A la hora de añadir un elemento podríamos darle una mayor importancia a unos elementos que a otros (un cargo VIP) y para ello se crea un tipo de cola especial que es la cola de prioridad. 7
  • 10. ¿Sabías Qué? La Cola Lineal La cola lineal es un tipo de almacenamiento creado por el usuario que trabaja bajo la técnica FIFO (primero en entrar primero en salir). Representación Gráfica Algoritmo para Crear Esta operación consistirá en definir la variable del tipo nuevo declarado, Cola (array que permitirá almacenar la información y las variables que apuntarán a los extremos de la estructura) e iniciar los valores de manera que se indique explícitamente que la cola, tras la creación, está vacía. (1) Variables queue: Pila; (2) Asignación de pila vacía queue.ini ←0 queue.fin ←0 Esta operación, en C++, se convierte en el constructor por defecto: Cola::Cola (void) { ini = 0; fin = 0; } Algoritmo para Insertar Si A=máximo entonces mensaje (overflow) en caso contrario A<-- A+1 cola[A]<-- valor Algoritmo para Eliminar Si A&ltF entonces mensaje (underflow) en caso contrario F <– F+1 x <– cola[F] ¡Esto y mucho más! 8
  • 11. La Cola Circular Una cola circular o anillo es una estructura de datos en la que los elementos están de forma circular y cada elemento tiene un sucesor y un predecesor. Algoritmo para Crear Esta operación consistirá en definir la variable de tipo array que permitirá almacenar la información y las variables que apuntarán a los extremos de la estructura. Además, hay que indicar explícitamente que la cola, trás la creación, está vacía. (1) Declaraciones: Cola : array [1..n] de T inicio, fin: 1..n (2)Cola vacía: inicio <-- 1 fin <-- 1 Comprobar si la cola está vacía: Con las condiciones establecidas, basta comprobar si inicio = fin: si Cola.inicio = Cola.fin entonces devolver(cierto) sino devolver(falso) Función siguiente: Con esta función obtenemos el índice del siguiente elemento a i, se trata de calcular el resto de ese i entre el máximo índice de la cola, algo así: (Siguiente := i MOD n + 1). 10
  • 12. Algoritmo para Eliminar Como se ve la eliminación no borra nada 'físicamente', sólo se encarga de actualizar el puntero 'Cola.inicio' en una posición y devolver el valor x como mucho, aunque esto último no sea estrictamente necesario. Aunque esa posición aun contenga datos será considerada como vacía a efectos del otro puntero 'Cola.final'. si Vacia(Cola) entonces "Error. Cola vacía." sino x <-- Primero(Cola) incrementar(Cola.inicio) devolver(x) fin_sino Algoritmo para Inserta Si (F+1=A) ó (F=1 y A=máximo) entonces mensaje (overflow) en caso contrario inicio si A=máximo entonces A<--1 cola[A]<-- valor en caso contrario A <--A+1 cola[A]<-- valor si F=0 entonces F <-- 1 fin 11
  • 13. 12