Está en la página 1de 16

Universidad Autónoma de Nuevo León

Facultad de Ingeniería Mecánica y Eléctrica

Programación de Estructura de Datos

Actividad 1. Estructuras de datos básicas

Docente: ING. Blanca Elizabeth Montemayor


Sauceda
Alumna: Karen Yazmín Cardona Hernández

Matricula:1959942
Turno: N1
CAPITULO 1. Estructuras fundamentales de datos
Con el propósito de que la información sea procesada, se requiere que esta
se almacena en la memoria de la computadora. De acuerdo con la forma en
que los datos se organizan, se clasifican en:
 Tipos de datos simples
 Tipos de datos estructurados

1.2 Arreglos
Un arreglo unidimensional se define como una colección finita, homogénea
y ordenada de elementos.
 Finita: todo arreglo tiene un límite; se determina cual debe ser el
número máximo de elementos
 Homogénea: todos los elementos de un arreglo son del mismo tipo.
Todos enteros, booleanos, etc...
 Ordenada: se puede determinar cuáles son el primero, segundo,
tercero y n elementos.

1.2.2 Operaciones con arreglos unidimensionales


Los arreglos se utilizan para almacenar datos. Resulta ser necesario
leer,escribir,asignar o simplemente modificar datos en un arreglo.
 Lectura: Un arreglo que consiste en leer y asignar un valor a cada uno
de sus componentes.
 Escritura: Se debe escribir el valor de cada uno de los componentes
 Asignaciones: En general ,no es posible asignar directamente un
valor a todo el arreglo, sino debe asignar el calor deseado a cada
componente
 Actualización: La cantidad de actualizaciones esta relacionada con el
tipo de problema que se intenta resolver

1.4 Arreglos de más de dos bidimensionales


Un arreglo multidimensional- N dimensiones- se define como una colección
finita, homogénea y ordenada. Para hacer referencia se usará N índices

1.5 La clase arreglo


Una clase se define como un objeto por medio de la descripción de sus
datos, conocidos como atributos y de su comportamiento, representado por
métodos, se dice que los atributos y métodos son los miembros de la clase.
La programación orientada a objetos tiene 4 propiedades:
 Abstracción
 Encapsulamiento u ocultamiento de la información
 Herencia
 Polimorfismo
La abstracción permite concentrarse en los datos y operaciones que
definen a un conjunto de objeto, ignorando los elementos que son
relevantes. La segunda propiedad ,encapsulamiento ,implica que tanto los
atributos como los métodos forma a un todo –la clase—y pueden ocultarse
de los clientes clase, al control de esta manera el acceso que se tenga.
La herencia representa la propiedad que permite compartir atributos y
métodos entre clase. El polimorfismo ofrece la facilidad de que ciertos
métodos pueden adoptar distintas formas
La clase arreglo tendrá atributos y métodos. Los atributos constituirán la
colección de elementos y el tamaño.
Un objeto es una instancia de una clase. Es decir, esta ultima representa a
un conjunto de objetos, a un concepto en general.

1.6 Registros
Un registro se define como una colección finita y heterogénea de elementos.
También representa un tipo de datos estructurados, en el que cada uno de
sus componentes se denomina campo. Los capos de un registro pueden ser
todo de diferentes tipos de datos.

1.6.3 Diferencias entre registros y arreglos


Un arreglo puede almacenar N elementos del mismo tipi –estructura de
datos homogénea—
A los componentes de un arreglo se tiene acceso por medio de índices que
indican la posición del elemento

1.6.4 Combinaciones entre arreglos y registros

1.6.5 Arreglos paralelos


Se entiende 2 o mas arreglos cuyos elementos se corresponden. Es decir,
los componentes que ocupan una misma posición en diferentes arreglos
tienen una estrecha relación semántica.

1.7 Registros y clases


La clase registro como tal no declara, porque lo que requiere es una clase
por cada registro.
La notación de puntos utilizada en los registros ---
<variable_registros><campo>--.
CAPITULO 2 Arreglos multidimensionales presentadas en
arreglos unidimensionales
Los lenguajes de programación pueden representar un arreglo
bidimensional A, m x n elementos, mediante un bloque de m x n posiciones
sucesivas, llamadas ordenación por renglones que utilizaban la mayoría de
los lenguajes de programación.

2.3 Arreglo de más de dos dimensiones


Se puede de realizar de dos formas diferentes: renglón a renglón, llamada
también ordenación por renglones, y columna a columna, llamada también
ordenación por columnas.

Matrices poco densas


Matrix representa un término matemático que se utiliza para indicar un
conjunto de elementos organizados por medio de renglones y columnas. Es
equivalente al termino arreglo bidimensional utilizando en la computación.

2.4.1 Matrices cuadradas poco densas


Son aquellas que tienen igual numero de renglones y de columnas. Si
además estas matrices tienen una proporción muy altas de cero, se
denominan poco densas.

2.4.4 Matriz tridiagonal


Si los elementos son distintos de cero se encuentran localizados en la
diagonal principal y en las diagonales por encima y por debajo de esta.
2.4.5 Matrices simétricas y antisimétricas
Una matriz A de nxn elementos es simétrica si A[i, j] es igual A[j, i] ,) esto
último se cumple para todo i y para todo j. En la figura 2.10 se presentan
dos ejemplos de matrices simétricas.
Por otra parte, una matriz A de nn elementos es antisimétrica si A [i, j] es
igual a-Ali. i], y lo anterior se cumple para todo i y para todo j; considerando
a ij. En la figura 2.11 se observan dos ejemplos de matrices antisimétricas.

CAPITULO 3 Pilas y colas


3.1 Introducción
Al analizar las operaciones de inserción y eliminación, se observó que los
elementos se podrían insertar o eliminar en cualquier posición del arreglo.
Las pilas y colas son estructuras de datos lineales con restricciones en
cuanto a la posición en que se deben eliminar o insertar componentes.

3.2 Pilas
Representa una estructura de datos en la que se puede agregar o quitar
elementos únicamente por los extremos.
Son estructuras de datos lineales, ya que los componentes ocupan lugares
sucesivos en la estructura y solo tienen un único predecesor y sucesor.
Se puede acceder mediante un extremo que se conoce generalmente como
top

3.2.2 Operaciones con pilas


La definición de una estructura de datos queda completa al incluir las
operaciones que se pueden realizar en ella. Para el caso de las pilas, las
operaciones básicas que se pueden llevar a cabo:
 Insertar un elemento -Push-- en la pila
 Eliminar un elemento - pop-- de la pila
Y las operaciones auxiliares:
 Pila_vacía
 Pila llena

3.2.3 Aplicaciones de pilas


Las pilas son una estructura de datos muy usada en la solución de diversos
pos de problemas, en el área de la computación. Ahora se analizarán
algunos de los casos más representativos de aplicación de estas:
 Llamadas a subprogramas: Cuando se tiene un programa que llama a
un subprograma, también conocido como modulo o función,
internamente se usan pilas para guardar el estado de las variables del
programa, así como las instrucciones pendientes de ejecución en el
momento que se hace la llamada
 Recursividad
Tratamiento de expresiones aritméticas
 Dada la expresión A + B se dice que ésta se encuentra en notación
infija, porque el operador (+) se encuentra entre los operandos (A y
B).
 Dada la expresión AB+ se dice que ésta se encuentra en notación
postfija, porque el operador (+) se encuentra después de los
operandos (A y B).
 Dada la expresión +AB se dice que ésta se encuentra en notación
prefija, porque el operador (+) está precediendo a los operandos (A y
B).
 Tratamiento de expresiones aritméticas
 Ordenación

3.2.4 La clase Pila


La clase Pila tiene atributos y métodos. Los atributos son la colección de
elementos y el TOPE. Los métodos, por otra parte, son todas aquellas
operaciones analizadas en la sección anterior -Pila_vacía, Pila_llena, Pone
y Quita-.

3.3 Colas
Una cola es una estructura lineal de datos se introducen por un extremo y
los ya existentes se eliminan por el otro.
La definición de la estructura de datos tipos cola queda completa al incluir
las operaciones se puedan realizar en ella. Las operaciones básicas que
pueden efectuarse son:
 Insertar un elemento en la cola: Las inserciones se llevarán a cabo
por el FINAL de la cola, mientras que las eliminaciones se harán por
el FRENTE- recuerde que el primero en entrar es el primero en salir.
 Eliminar un elemento de la cola

Colas circulares
Una cola circular constituye una estructura de datos lineales en el cual el
siguiente elemento del último de la realidad es el primero. De esta forma se
utiliza de manera más eficiente

Doble Cola
Doble cola o bicola es una generalización de una estructura de datos tipo
cola . En una doble cola, los elementos a insertar o eliminar cualquiera de
los dos extremos. Es decir, si se pueden insertar y eliminar valores tanto por
FRENTE como por el FINAL de la cola

2 variantes de cola

 Doble cola con entrada restringida: Esta permite que las


eliminaciones se realicen por cualquieras de los dos extremos ,
mientras que las inserciones solo por el FINAL de las colas
 Doble cola con salida restringida: Esta permite que las inserciones se
realicen por cualquieras de los dos extremos , mientras que las
eliminaciones solo por el FINAL de las colas.

La clase cola
COOBJ. Cola_llena para invocar el método que determina si la cola está
llena o no llena. En este método no hay argumento, que todos los valores
requeridos son miembros de clase
COOBJ. Inserta_cola (argumento) para insertar un nuevo elemento en la
cola. En este método hay un único argumento, que es el dato para insertar;
todos los otros valores son requeridos son miembros de la clase
Código
Codigo de colas
Referencias
https://www.canva.com/design/DAFbJfjtRa4/YJlFldM12omIKvuKRkwJ-g/
edit?
utm_content=DAFbJfjtRa4&utm_campaign=designshare&utm_medium=link
2&utm_source=sharebutton
Libro de texto, Estructura de datos “Tercera edición”
Autor: Osvaldo Carió Silvia Guardati

También podría gustarte