Programación de Sistemas
|
|
- Amparo Martínez Redondo
- hace 8 años
- Vistas:
Transcripción
1 Programación de Sistemas Algoritmos de Ordenación Índice Por qué es importante la ordenación? Un par de ejemplos InsertionSort QuickSort Para cada uno veremos: En qué consisten, Casos extremos Eficiencia Ejemplos de implementación Algoritmos de ordenación 2
2 Por qué es importante? Facilita la búsqueda La información devuelta por un cómputo suele hacerse de forma ordenada para facilitar su manejo. Ej: palabras de un diccionario, ficheros en un directorio, catálogo de una biblioteca, etc Una ordenación de datos inicial puede facilitar el rendimiento de un algoritmo. Ej: encontrar valores repetidos Muchos de los cómputos invocan internamente un método de ordenación y el coste del método de ordenación utilizado determina el coste global. Algoritmos de ordenación Problema inicial Partimos de una estructura de datos lineal que contiene cierto número de elementos. Esos elementos son ordenables siguiendo algún criterio. Para comprobar si un algoritmo de ordenación es correcto y calcular su eficiencia es necesario estudiar los casos más favorables y desfavorables y casos especiales como: La estructura esté ordenada antes de empezar en orden creciente o decreciente. Que existan elementos repetidos Etc. Algoritmos de ordenación 4
3 InsertionSort Ordenación por inserción En qué consiste? Suponemos un array de elementos a[ ] Suponemos que el primer elemento a[0] está ordenado. Cogemos el siguiente elemento a[] y lo guardamos en una variable temporal tmp. Comparamos uno por uno con los elementos previamente ordenados para ver cual sería su sitio correcto. Lo colocamos en su ubicación correcta y Repetimos el proceso con el siguiente elemento suponiendo ahora que a[] y a[2] están ordenados y añadimos a[] Siempre suponemos que la matriz a[0]...a[p-] está ordenada cogemos el elemento a[p] y lo ubicamos correctamente Cogemos el elemento a[p+] Repetimos hasta que ya no quede ningún elemento nuevo que añadir Algoritmos de ordenación InsertionSort Implementación public static void insertionsort( int a[ ] ){ for( int p = ; p < a.length; p++ ){ //recorre desde p hasta fin del array int tmp = a[ p ]; int j; for(j = p ; j > 0 && tmp < ( a[ j - ] ); j-- ){//recorre desde p hasta principio del array a[ j ] = a[ j - ]; //desplazo hacia la dcha los elementos del vector mayores que tmp } a[ j ] = tmp; //inserto tmp en la posición en la que se para j (cuando dejo de desplazar elementos) } } Algoritmos de ordenación 6
4 InsertionSort Casos Extremos Cuando el array de entrada está ordenado en orden inverso Este sería el caso peor El bucle interno se ejecuta p+ veces por cada valor de P: N- Σ P= (p-)= n por tanto t ejecución sería Θ(N 2 ) Cuando el array de entrada está ordenado Este sería el caso mejor El bucle interno falla siempre y el t ejecución sería O(N) Estudiando el caso medio llegaríamos a que t ejecución es Θ(N 2 ) En problemas de ordenación el t ejecución depende no sólo del tamaño de los datos sino también de su orden específico Algoritmos de ordenación 7 Cómo medir grado de desorden? Inversiones Llamamos Inversión a cada pareja de elementos que no están ordenados entre sí. El número de inversiones es una medida del grado de desorden Un vector ordenado no contiene ninguna inversión Intercambiar 2 elementos desordenados elimina exactamente una inversión Ordenación: Si inicialmente tenemos I inversiones Tenemos que hacer I intercambios t ejecución sería O(I+N) El resto del trabajo es de orden N El nº medio de inversiones de un array de N elementos es N(N-)/4 t ejecución sería Ω(N 2 ) Ejemplo:{,,, 2, 6, } contiene 0 inversiones (,), (,2), (,6), (,), (,2), (,), (,2), (,6), (,) y (6,)
5 Algoritmos de ordenación Complejidad Los algortimos de ordenación funcionan eliminando inversiones Todo algoritmo de ordenación que ordene por intercambios de elementos adyacentes requiere en promedio t ejecución Ω(N 2 ) por ejemplo: InsertionSort SelectionSort BubleSort Para conseguir que se ejecute más eficientemente que t ejecución Ω(N 2 ) debe eliminar más de una inversión por intercambio Algoritmos de ordenación Ordenación rápida (Quicksort) Sea T[..n] una matriz de n elementos. Queremos ordenar estos elementos por orden ascendente. Pasos: Seleccionar un pivote. Poner todos los elementos mayores que el pivote a su derecha, y los menores a su izquierda. Aplicar recursivamente lo anterior a cada mitad de la matriz. Algoritmos de ordenación 0
6 Ordenación rápida (Quicksort)(II) Nos gustaría usar la mediana como pivote. Encontrar la mediana requiere un tiempo excesivo. Elegimos como pivote un elemento arbitrario. Queremos descomponer T[i..j] empleando como pivote p = T[i] Algoritmos de ordenación Ordenación rápida (Quicksort)(III) Inicializamos 2 punteros: k = i, L = j + Se incrementa k hasta que T[k] > p, y se decrementa L hasta que T[L] <= p Se intercambian T[k] y T[L] Se continúa mientras k > L Finalmente se intercambian T[i] y T[L] para poner el pivote en posición correcta. Algoritmos de ordenación 2
7 Ordenación rápida (Quicksort)(IV) algoritmo pivote(t[i..j]); var L) {Permuta los elementos de la matriz T[i..j] y proporciona un valor L tal que, al final, i <= L <= j; T[k] <= p para todo i <= k < L, T[L] = p, y T[k] > p para todo L < k <= j, en donde p es el valor iniciar de T[i]} p T[i] k i; L j + repetir k k + hasta que T[k] < p o k >= j repetir L L hasta que T[L] <= p mientras k < L hacer intercambiar T[k] y T[L] repetir k k + hasta que T[k] > p repetir L L hasta que T[L] <= p intercambiar T[i] y T[L] Algoritmos de ordenación Ordenación rápida (Quicksort)(V) Algoritmo de ordenación: algoritmo quicksort(t[i..j]) {Ordena la submatriz T[i..j] por orden no decreciente} si j i es suficientemente pequeño entonces insertar (T[i..j]) sino pivote(t[i..j], L) quicksort(t[i..l ]) quicksort(t[l +..J]) Para ordenar la matriz completa, basta con llamar a quicksort(t[..n]) Algoritmos de ordenación 4
8 Algoritmos de ordenación Ordenación rápida (Quicksort)(VI) Ejemplo. Matriz a ordenar: p = Se busca el primer elemento mayor que el pivote y el último elemento no mayor que el pivote: Algoritmos de ordenación 6 Ordenación rápida (Quicksort)(VII) Se intercambian esos elementos: Se vuelve a explorar en ambas direcciones: Se intercambian
9 Ordenación rápida (Quicksort)(VIII) Se explora: Los punteros se han cruzado: se coloca el pivote Se ordenan recursivamente las submatrices: Algoritmos de ordenación 7 Ordenación rápida (Quicksort)(X) En término medio los subcasos no estarán demasiado desequilibrados. En ese caso, t(n) es O(n log n) Algoritmos de ordenación
10 Conclusiones InsertionSort Ω(N 2 ) es apropiado para pequeñas cantidades de datos QuickSort O(NlogN) tiene el mejor rendimiento pero es complicado de implementar es apropiado para cantidades grandes de datos. Algoritmos de ordenación Programación de Sistemas Algoritmos de Búsqueda
11 Índice Por qué es importante la búsqueda? Algunos ejemplos Búsqueda lineal Búsqueda Binaria Para todos ellos veremos: En qué consisten, Casos extremos Eficiencia Ejemplos de implementación Algoritmos de ordenación 2 Por qué es importante? Llamamos Búsqueda estática a la búsqueda que se hace sobre un array de elementos estáticos (que no modifican su valor en el t). Uno de los usos más frecuentes de los ordenadores es la búsqueda de información en estructuras de datos La eficiencia de un algoritmo de búsqueda depende de si el array sobre el que hacemos la búsqueda está o no ordenado. Ej: palabras de un diccionario, ficheros en un directorio, catálogo de una biblioteca, etc Muchos algoritmos de búsqueda invocan internamente un método de ordenación y el coste del método de ordenación utilizado determina el coste global. Algoritmos de ordenación 22
12 Problema inicial Dados: Una estructura de datos lineal que contiene cierto número de elementos array a[ ]. Un valor x del mismo tipo que los elementos almacenados en el array El algoritmo debe devolver La posición del elemento x en el array a[ ] o una indicación de que no existe Si x aparece más de una vez devuelve cualquiera de las posiciones en la que esté almacenado. Algoritmos de ordenación 2 LinearSearch Búsqueda Lineal En qué consiste? Partimos de: Un array de elementos a[ ] y Un elemento x Recorremos el array de izda a dcha comparando cada uno de sus elementos con x Si son iguales devolvemos la posición del elemento y termina la búsqueda Si son distintos seguimos buscando hasta llegar al final del array y si no lo encontramos lo notificamos con un mensaje o una excepción Algoritmos de ordenación 24
13 Búsqueda Lineal Implementación public static int LinearSearch(int a[], int x) { int resultado = -; for (int i = 0; i < a.length ; i++) { if (a[i] == x){ return resultado=i; }else{ resultado=-; } } return resultado; } Algoritmos de ordenación 2 Búsqueda Lineal Casos Extremos. Complejidad Búsqueda sin éxito t ejecución O(N) (Hay que recorrer todo el array) Búsqueda con éxito Caso peor t ejecución O(N) (Hay que recorrer todo el array) Caso medio t ejecución O(N) (Sólo recorremos la mitad del array) Algoritmos de ordenación 26
14 Búsqueda binaria Como buscar una palabra en un diccionario o un nombre en la guía telefónica. Es una reducción. Sea T[..n] un array ordenado por orden no decreciente. Problema: encontrar un elemento x en la matriz, si es que está. Algoritmos de ordenación 27 Búsqueda binaria (II) Solución obvia: examinar secuencialmente todos los elementos de T, hasta llegar al final de la matriz o hasta encontrar un elemento que no sea menor que x: Algoritmo secuencial(t[..n], x) {Búsqueda secuencial de x en una matriz} para i hasta n hacer si T[i] >= x entonces devolver i devolver n + Algoritmos de ordenación 2
15 Búsqueda binaria (III) Este algoritmo es O(r), siendo r el índice que se devuelve. (O() en el caso mejor y O(n) en el caso peor). Quedándome con el caso peor: O(n) Para acelerar la búsqueda: buscar x sólo en una de las dos mitades de T. Para saber con qué mitad quedarnos, comparamos x con un elemento de la matriz. Algoritmos de ordenación 2 Búsqueda binaria (IV) Sea k = n / 2 Si x <= T[k], buscamos en T[..k] Si x > T[k], buscamos en T[k+..n] Antes de comenzar a buscar, conviene comprobar que x <= T[n] El algoritmo quedaría: Algoritmos de ordenación 0
16 Búsqueda binaria (V) x <= T[k]? i k j no i k j sí i k j sí ik j no ij i = j : alto Búsqueda de x = 2 Algoritmos de ordenación Búsqueda binaria (VI) En seudocódigo: algoritmo busquedabin(t[..n], x) si n = 0 o x > T[n] entonces devolver n + si no devolver binrec(t[..n], x) algoritmo binrec(t[i..j], x) {Búsqueda binaria de x en la submatriz T[i..j] con la seguridad de que T[i ] < x <= T[j]} si i = j entonces devolver i k (i + j) / 2 si x <= T[k] entonces devolver binrec(t[i..k], x) si no devolver binrec(t[k +..j], x) Algoritmos de ordenación 2
17 Búsqueda binaria (VII) Sea t(m) el tiempo requerido por una llamada a binrec(t[i..j], x), donde m = j i + Obviamente, el tiempo requerido por una llamada a busquedabin(t[..n], x) es t(n), salvo por una pequeña constante aditiva. t(m) = t(m/2) + g(m), m > y par, y g(m) es O() Utilizando el análisis general con L =, b = 2 y k = 0 t(m) es O(log m) Algoritmos de ordenación Búsqueda binaria (VIII) Versión iterativa: algoritmo biniter(t[..n], x) {búsqueda binaria iterativa de x en la matriz T} si x > T[n] entonces devolver n + i ; j n mientras i < j hacer {T[i ] < x <= T[j]} k (i + j) / 2 si x >= T[k] entonces j k sino i k + devolver i Algoritmos de ordenación 4
18 Conclusiones Para valores pequeños de N (ej N<6) puede no merecer la pena la búsqueda binaria porque utiliza aproximadamente mismo número de comparaciones que una búsqueda secuencial normal Las últimas iteraciones de una búsqueda binaria progresan lentamente Puede interesar solución híbrida Aplicamos búsqueda binaria que termina cuando el rango es pequeño A partir de ese momento aplicamos búsqueda lineal Algoritmos de ordenación
UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO. Introducción FACULTAD DE INGENIERÍA. Ordenación
Introducción Uno de los procedimientos más comunes y útiles en el procesamiento de datos, es la clasificación u ordenación de los mismos. Se considera ordenar al proceso de reorganizar un conjunto dado
Más detallesARREGLOS DEFINICION GENERAL DE ARREGLO
ARREGLOS DEFINICION GENERAL DE ARREGLO Conjunto de cantidades o valores homogéneos, que por su naturaleza se comportan de idéntica forma y deben de ser tratados en forma similar. Se les debe de dar un
Más detallesAmpliación de Estructuras de Datos
Ampliación de Estructuras de Datos Amalia Duch Barcelona, marzo de 2007 Índice 1. Diccionarios implementados con árboles binarios de búsqueda 1 2. TAD Cola de Prioridad 4 3. Heapsort 8 1. Diccionarios
Más detallesEstructuras de datos: Árboles binarios de
Estructuras de datos: Árboles binarios de búsqueda, Dep. de Computación - Fac. de Informática Universidad de A Coruña Santiago Jorge santiago.jorge@udc.es Árboles binarios de búsqueda, Table of Contents
Más detallesTema 8: Algoritmos de ordenación y búsqueda
Tema 8: Algoritmos de ordenación y búsqueda Objetivos: en este tema se presentan algoritmos que permiten buscar un elemento dentro de una colección y ordenar una colección en base a algún criterio (el
Más detallesCapítulo 3 Ordenación(Clasificación) y Búsqueda
Capítulo 3 Ordenación(Clasificación) y Búsqueda 3.1 Ordenamiento Interno Los computadores emplean gran parte de su tiempo en operaciones de búsqueda y ordenamiento. Existen 2 métodos de ordenación: ordenación
Más detallesEn cualquier caso, tampoco es demasiado importante el significado de la "B", si es que lo tiene, lo interesante realmente es el algoritmo.
Arboles-B Características Los árboles-b son árboles de búsqueda. La "B" probablemente se debe a que el algoritmo fue desarrollado por "Rudolf Bayer" y "Eduard M. McCreight", que trabajan para la empresa
Más detallesMetodología de la Programación II. Recursividad
Metodología de la Programación II Recursividad Objetivos Entender el concepto de recursividad. Conocer los fundamentos del diseño de algoritmos recursivos. Comprender la ejecución de algoritmos recursivos.
Más detallesBase de datos en Excel
Base de datos en Excel Una base datos es un conjunto de información que ha sido organizado bajo un mismo contexto y se encuentra almacenada y lista para ser utilizada en cualquier momento. Las bases de
Más detallesEjercicio 1. Desarrollar un pequeño juego para practicar mecanografía.
Examen Curso 2001-2002. Convocatoria de Febrero Página 1 Ejercicio 1. Desarrollar un pequeño juego para practicar mecanografía. Este ejercicio se divide en dos partes con el fin de que el alumno no intente
Más detallesÁrboles AVL. Laboratorio de Programación II
Árboles AVL Laboratorio de Programación II Definición Un árbol AVL es un árbol binario de búsqueda que cumple con la condición de que la diferencia entre las alturas de los subárboles de cada uno de sus
Más detallesCapítulo 12: Indexación y asociación
Capítulo 12: Indexación y asociación Conceptos básicos Índices ordenados Archivos de índice de árbol B+ Archivos de índice de árbol B Asociación estática Asociación dinámica Comparación entre indexación
Más detallesÁrboles. Cursos Propedéuticos 2015. Dr. René Cumplido M. en C. Luis Rodríguez Flores
Árboles Cursos Propedéuticos 2015 Dr. René Cumplido M. en C. Luis Rodríguez Flores Contenido de la sección Introducción Árbol genérico Definición y representación Árboles binarios Definición, implementación,
Más detallesLa nueva criba de Eratóstenes Efraín Soto Apolinar 1 F.I.M.E. U.A.N.L. San Nicolás, N.L. México. efrain@yalma.fime.uanl.mx
La nueva criba de Eratóstenes Efraín Soto Apolinar 1 F.I.M.E. U.A.N.L. San Nicolás, N.L. México. efrain@yalma.fime.uanl.mx Resumen Se dan algunas definiciones básicas relacionadas con la divisibilidad
Más detallesARBOLES ARBOLES BINARIOS ORDENADOS. REPRESENTACIÓN Y OPERACIONES
ARBOLES ARBOLES BINARIOS ORDENADOS. REPRESENTACIÓN Y OPERACIONES Introducción al tema a. Formar grupos de 4 personas b. Tomar una hoja en blanco y una lapicera o lápiz c. En la hoja en blanco diseña un
Más detallesEstructuras de Datos. Montículos. Montículos. Montículos. Tema 3. Montículos. Definiciones básicas: Definiciones básicas:
Estructuras de Datos Tema. 1. Definiciones básicas 2. Implementación. Operaciones con montículos 4. Definiciones básicas: En un árbol binario completo todos los niveles del árbol (excepto tal vez el último)
Más detallesEstructura de datos y de la información Boletín de problemas - Tema 7
Estructura de datos y de la información Boletín de problemas - Tema 7 1. Un concesionario de coches tiene un número limitado de M modelos, todos en un número limitado de C colores distintos. Cuando un
Más detallesALGORITMOS DE ORDENACIÓN Y BÚSQUEDA
6 ALGORITMOS DE ORDENACIÓN Y BÚSQUEDA OBJETIVOS Después del estudio de este capítulo usted podrá: Conocer los algoritmos basados en el intercambio de elementos. Conocer el algoritmo de ordenación por inserción.
Más detallesPrimer Parcial de Programación 3 (1/10/2009)
Primer Parcial de Programación (/0/009) Instituto de Computación, Facultad de Ingeniería Este parcial dura horas y contiene carillas. El total de puntos es 0. En los enunciados llamamos C* a la extensión
Más detallesESTRUCTURA DE DATOS: ARREGLOS
ESTRUCTURA DE DATOS: ARREGLOS 1. Introduccion 2. Arreglos - Concepto - Caracteristicas 3. Arreglos Unidimensionales 4. Arreglos Bidimensionales 5. Ventajas del uso de arreglos 6. Ejemplo 1. Introducción
Más detallesSegunda práctica de Programación 2
Segunda práctica de Programación 2 La segunda práctica consistirá en el diseño y posterior implementación como proyecto de Netbeans de dos versiones sobre el mismo problema. El tema central de ambas versiones
Más detallesClase 32: Árbol balanceado AVL
Clase 32: Árbol balanceado AVL http://computacion.cs.cinvestav.mx/~efranco @efranco_escom efranco.docencia@gmail.com (Prof. Edgardo A. Franco) 1 Contenido Problema de los árboles binarios de búsqueda Variantes
Más detallesCómo?: Resolviendo el sistema lineal homógeneo que satisfacen las componentes de cualquier vector de S. x4 = x 1 x 3 = x 2 x 1
. ESPACIOS VECTORIALES Consideremos el siguiente subconjunto de R 4 : S = {(x, x 2, x 3, x 4 )/x x 4 = 0 x 2 x 4 = x 3 a. Comprobar que S es subespacio vectorial de R 4. Para demostrar que S es un subespacio
Más detallesDefinición 1.1.1. Dados dos números naturales m y n, una matriz de orden o dimensión m n es una tabla numérica rectangular con m filas y n columnas.
Tema 1 Matrices Estructura del tema. Conceptos básicos y ejemplos Operaciones básicas con matrices Método de Gauss Rango de una matriz Concepto de matriz regular y propiedades Determinante asociado a una
Más detallesPRUEBAS DE SOFTWARE TECNICAS DE PRUEBA DE SOFTWARE
PRUEBAS DE SOFTWARE La prueba del software es un elemento crítico para la garantía de la calidad del software. El objetivo de la etapa de pruebas es garantizar la calidad del producto desarrollado. Además,
Más detallesPHP y MySQL. Indice: Switch Bucles For While do...while
PHP y MySQL Indice: Switch Bucles For While do...while Switch switch...case es otra opción para trabajar con condiciones. Y suplanta al if, cuando lo único que se quiere hacer es comparar si son iguales
Más detallesTema 10- Representación Jerárquica: Tema 10- Representación Jerárquica: Árboles Binarios
Tema 10- Representación Jerárquica: Árboles Binarios Tema 10- Representación Jerárquica: Árboles Binarios Germán Moltó Escuela Técnica Superior de Ingeniería Informática Universidad Politécnica de Valencia
Más detallesAnálisis asintótico: algoritmos recursivos e iterativos
Análisis asintótico: algoritmos recursivos e iterativos Frank Sebastián Franco Hernández 22 de agosto de 2014 1. Análisis de tres algoritmos de ordenamiento 1.1. Algoritmo BubbleSort Este algoritmo funciona
Más detallesAnálisis de los datos
Universidad Complutense de Madrid CURSOS DE FORMACIÓN EN INFORMÁTICA Análisis de los datos Hojas de cálculo Tema 6 Análisis de los datos Una de las capacidades más interesantes de Excel es la actualización
Más detallesTema 6. Reutilización de código. Programación 2015-2016. Programación - Tema 6: Reutilización de código
Tema 6 Reutilización de código Programación 2015-2016 Programación - Tema 6: Reutilización de código 1 Tema 6. Reutilización de código Modularidad. Implementación de métodos. Uso de métodos. Programación
Más detallesTema 2. Espacios Vectoriales. 2.1. Introducción
Tema 2 Espacios Vectoriales 2.1. Introducción Estamos habituados en diferentes cursos a trabajar con el concepto de vector. Concretamente sabemos que un vector es un segmento orientado caracterizado por
Más detallesMatrices equivalentes. El método de Gauss
Matrices equivalentes. El método de Gauss Dada una matriz A cualquiera decimos que B es equivalente a A si podemos transformar A en B mediante una combinación de las siguientes operaciones: Multiplicar
Más detallesAnalisis de algoritmos
Analisis de algoritmos Eficiencia Es la capacidad de disponer de un recurso. En el caso de los algoritmos, la eficiencia se logra haciendo el mejor uso posible de los recursos del sistema. Recursos Qué
Más detallesCapítulo 1. MANUAL DE USUARIO
Capítulo 1. MANUAL DE USUARIO 1.1 SUCESIONES GRÁFICAS Lo primero que se hará es mostrar la pantalla que se encontrará el usuario cuando ejecute la aplicación, indicando las zonas en las que se divide esta:
Más detallesEjemplos de conversión de reales a enteros
Ejemplos de conversión de reales a enteros Con el siguiente programa se pueden apreciar las diferencias entre las cuatro funciones para convertir de reales a enteros: program convertir_real_a_entero print
Más detallesGESTIÓN DOCUMENTAL PARA EL SISTEMA DE CALIDAD
GESTIÓN DOCUMENTAL PARA EL SISTEMA DE CALIDAD Manual de usuario 1 - ÍNDICE 1 - ÍNDICE... 2 2 - INTRODUCCIÓN... 3 3 - SELECCIÓN CARPETA TRABAJO... 4 3.1 CÓMO CAMBIAR DE EMPRESA O DE CARPETA DE TRABAJO?...
Más detallesQue es PHP? Que se puede hacer con PHP? Sintaxis del lenguaje. Variables. Operadores básicos. Condicionales. Ciclos.
Que es PHP? Que se puede hacer con PHP? Sintaxis del lenguaje. Variables. Operadores básicos. Condicionales. Ciclos. Qué es PHP? PHP (Hypertext Preprocessor). Es un lenguaje de programación: De código
Más detallesPráctica 1 - Pista de Carreras 12407 - Programación II
1. Introducción Práctica 1 - Pista de Carreras 12407 - Programación II En esta práctica el objetivo es implementar una matriz de adyacencia para el juego Pista de Carreras. Con tal fin, primero hay que
Más detallesCapitulo V Administración de memoria
Capitulo V Administración de memoria Introducción. Una de las tareas más importantes y complejas de un sistema operativo es la gestión de memoria. La gestión de memoria implica tratar la memoria principal
Más detallesDoble Equipos Sistema de Ingresos: Preguntas Más Frecuentes
Doble Equipos Sistema de Ingresos: Preguntas Más Frecuentes Preguntas Generales: P. Cómo puedo realizar el seguimiento y administrar mis comisiones en iwowwe? R. Cuando cualquier venta se hace en su organización,
Más detallesVI Colas de prioridad
VI Colas de prioridad Una cola de prioridad (cat: cua de prioritat; ing: priority queue) es una colección de elementos donde cada elemento tiene asociado un valor susceptible de ordenación denominado prioridad.
Más detallesTecnólogo Informático- Estructuras de Datos y Algoritmos- 2009
Árboles Ejemplos de estructuras arborescentes: con forma de árbol Regla de Alcance: los objetos visibles en un procedimiento son aquellos declarados en él mismo o en cualquier ancestro de él (cualquier
Más detallesInstalación y mantenimiento de servicios de Internet. U.T.3.- Servicio DNS
Instalación y mantenimiento de servicios de Internet U.T.3.- Servicio DNS 1 Qué es el servicio DNS? A los usuarios de Internet les resulta complicado trabajar con direcciones IP, sobre todo porque son
Más detallesResolución de Problemas
Introducción Resolución de Problemas La resolución de problemas es una capacidad que consideramos inteligente Somos capaces de resolver problemas muy diferentes Encontrar el camino en un laberinto Resolver
Más detallesUAM MANUAL DE EMPRESA. Universidad Autónoma de Madrid
MANUAL DE EMPRESA Modo de entrar en ÍCARO Para comenzar a subir una oferta de empleo, el acceso es a través del siguiente enlace: http://icaro.uam.es A continuación, aparecerá la página de inicio de la
Más detallesTABLA DE DECISION. Consideremos la siguiente tabla, expresada en forma genérica, como ejemplo y establezcamos la manera en que debe leerse.
TABLA DE DECISION La tabla de decisión es una herramienta que sintetiza procesos en los cuales se dan un conjunto de condiciones y un conjunto de acciones a tomar según el valor que toman las condiciones.
Más detallesMANUAL PROGRAMA PARA PIZZERIAS Y COMIDAS PARA LLEVAR
Tlf: 685 82 88 73 MANUAL PROGRAMA PARA PIZZERIAS Y COMIDAS PARA LLEVAR Desde la pantalla principal, que es la que se carga nada más encender el ordenador, se pueden ver 12 botones. El más grande, con el
Más detallesPRÁCTICA N 2 SISTEMAS DE NUMERACIÓN
PRÁCTICA N 2 SISTEMAS DE NUMERACIÓN Ejercicio 1. Diseñar una planilla EXCEL que tome como dato de entrada un número entero y devuelva la representación en base 2. Testearla con los números 23, 245, 673,
Más detallesObjetivos de la práctica: - Practicar uso de ficheros: abrir, cerrar y tratamiento de información contenida en el fichero.
Objetivos de la práctica: - Practicar uso de ficheros: abrir, cerrar y tratamiento de información contenida en el fichero. Uso de Ficheros Todas las estructuras de datos vistas hasta ahora utilizan la
Más detallesPlataforma Educativa Manual del Docente Nivel II Módulo 3 Wiki
2014 Plataforma Educativa Manual del Docente Nivel II Módulo 3 Wiki Dirección Provincial de Tecnologías Educativas Dirección Provincial de Tecnologías Educativas Ministerio de Educación Ministerio de Educación
Más detallesPráctica 3: Programación con subrutinas
Práctica 3: Programación con subrutinas 3.1 Objetivos El objetivo de esta práctica es estudiar el soporte del ensamblador del ARM para la gestión de subrutinas, para lo que resulta necesario familiarizarse
Más detallesResumen de técnicas para resolver problemas de programación entera. 15.053 Martes, 9 de abril. Enumeración. Un árbol de enumeración
5053 Martes, 9 de abril Ramificación y acotamiento () Entregas: material de clase Resumen de técnicas para resolver problemas de programación entera Técnicas de enumeración Enumeración completa hace una
Más detallesExamen escrito de Programación 1
Examen escrito de Programación 1 Escuela de Ingeniería y Arquitectura Departamento de Informática e Ingeniería de Sistemas 2 de septiembre de 2015 Se debe disponer sobre la mesa en lugar visible un documento
Más detalles1 1 0 1 x 1 0 1 1 1 1 0 1 + 1 1 0 1 0 0 0 0 1 1 0 1 1 0 0 0 1 1 1 1
5.1.3 Multiplicación de números enteros. El algoritmo de la multiplicación tal y como se realizaría manualmente con operandos positivos de cuatro bits es el siguiente: 1 1 0 1 x 1 0 1 1 1 1 0 1 + 1 1 0
Más detallesE 1 E 2 E 2 E 3 E 4 E 5 2E 4
Problemas resueltos de Espacios Vectoriales: 1- Para cada uno de los conjuntos de vectores que se dan a continuación estudia si son linealmente independientes, sistema generador o base: a) (2, 1, 1, 1),
Más detallesBREVE MANUAL DE SOLVER
BREVE MANUAL DE SOLVER PROFESOR: DAVID LAHOZ ARNEDO PROGRAMACIÓN LINEAL Definición: Un problema se define de programación lineal si se busca calcular el máximo o el mínimo de una función lineal, la relación
Más detallesTema 6: Generación de código (parte 2)
Tema 6: Generación de código (parte 2) Procesamiento de Lenguajes Dept de Lenguajes y Sistemas Informáticos Universidad de Alicante Procesamiento de Lenguajes Tema 6: Generación de código (parte 2) 1 /
Más detallesManual de Instalación. Sistema FECU S.A.
Manual de Instalación Sistema FECU S.A. Índice Requerimientos de hardware... 3 Requerimientos de software... 3 Bajar programas desde Internet... 4 Manual de Usuario... 5 Archivos de instalación FECU S.A....
Más detallesDivisibilidad y números primos
Divisibilidad y números primos Divisibilidad En muchos problemas es necesario saber si el reparto de varios elementos en diferentes grupos se puede hacer equitativamente, es decir, si el número de elementos
Más detallesOPERACIONES EN RÉGIMEN DE COMPUESTA
OPERACIONES EN RÉGIMEN DE COMPUESTA Las operaciones en régimen de compuesta se caracterizan porque los intereses, a diferencia de lo que ocurre en régimen de simple, a medida que se van generando pasan
Más detallesSorting++ Herman Schinca. Clase 21. 10 de Junio de 2011
Sorting++ Herman Schinca Clase 21 10 de Junio de 2011 Recordando Ya vimos 3 algoritmos de ordenamiento basados en la comparación entre elementos: Selection, Insertion y Bubble. Los 3 en peor caso (cuando
Más detallesMEDIDAS DE TENDENCIA CENTRAL
CAPÍTULO 14 MEDIDAS DE TENDENCIA CENTRAL A veces, de los datos recolectados ya organizados en alguna de las formas vistas en capítulos anteriores, se desea encontrar una especie de punto central en función
Más detallesSISTEMAS DE ECUACIONES LINEALES
SISTEMAS DE ECUACIONES LINEALES INTRODUCCIÓN En el presente documento se explican detalladamente dos importantes temas: 1. Descomposición LU. 2. Método de Gauss-Seidel. Se trata de dos importantes herramientas
Más detallesPráctica del paso de generación de Leads
Práctica del paso de generación de Leads La parte práctica de este módulo consiste en poner en marcha y tener en funcionamiento los mecanismos mediante los cuales vamos a generar un flujo de interesados
Más detallesARBOLES ARBOLES BINARIOS ORDENADOS. REPRESENTACIÓN Y OPERACIONES
ARBOLES ARBOLES BINARIOS ORDENADOS. REPRESENTACIÓN Y OPERACIONES Características ARBOLES - CONCEPTOS Cada elemento del árbol se relaciona con cero o más elementos a quienes llama hijos. Si el árbol no
Más detallesCurso cero Matemáticas en informática :
y Curso cero Matemáticas en informática : y Septiembre 2007 y y Se llama matriz de orden m n a cualquier conjunto de elementos dispuestos en m filas y n columnas: a 11 a 12 a 13 a 1n a 21 a 22 a 23 a 2n
Más detallesAnálisis probabilístico y algoritmos aleatorizados
Análisis probabilístico y algoritmos aleatorizados Johan Van Horebeek, horebeek@cimat.mx Análisis probabilístico: considerar el input de un algoritmo como de cierta distribución probabilística. Algoritmo
Más detallesConclusiones. Particionado Consciente de los Datos
Capítulo 6 Conclusiones Una de las principales conclusiones que se extraen de esta tesis es que para que un algoritmo de ordenación sea el más rápido para cualquier conjunto de datos a ordenar, debe ser
Más detallesCentro de Capacitación en Informática
Fórmulas y Funciones Las fórmulas constituyen el núcleo de cualquier hoja de cálculo, y por tanto de Excel. Mediante fórmulas, se llevan a cabo todos los cálculos que se necesitan en una hoja de cálculo.
Más detallesCertific@2 (Certificado de Empresa): guía para las empresas
Certific@2 (Certificado de Empresa): guía para las empresas Servicio Público de Empleo Estatal Madrid, Octubre - 2011 Índice Qué es y recepción del certificado de empresa Acceso a la transmisión de certificados
Más detallesTema 11: Sistemas combinacionales
Tema 11: Sistemas combinacionales Objetivo: Introducción Generador Comprobador de paridad Comparadores Semisumador (HA) Sumador Completo (FA) Expansión de sumadores Sumador paralelo con arrastre serie
Más detallesInternet Information Server
Internet Information Server Internet Information Server (IIS) es el servidor de páginas web avanzado de la plataforma Windows. Se distribuye gratuitamente junto con las versiones de Windows basadas en
Más detallesÁrboles binarios de búsqueda ( BST )
Árboles binarios de búsqueda ( BST ) mat-151 Alonso Ramírez Manzanares Computación y Algoritmos 24.04.2015 Arbol Binario de Búsqueda Un árbol binario de búsqueda (Binary Search Tree [BST]) es un árbol
Más detallesRESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA
UNED Centro Asociado de Cádiz RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA 1. OBJETOS Cualquier elemento del programa es un objeto. Un programa es un conjunto de objetos que se comunican entre sí
Más detallesFundamentos de la Programación
Fundamentos de la Programación El Software Las operaciones que debe realizar el hardware son especificadas con una lista de instrucciones, llamadas programas o software. Dos grandes grupos de software
Más detallesSeminario de Informática
Unidad II: Operaciones Básicas de Sistemas Operativos sobre base Windows 11. Herramientas del Sistema INTRODUCCION Este apunte está basado en Windows XP por ser el que estamos utilizando en el gabinete
Más detallesF O R M U L A R I O S FORMULARIOS
F O R M U L A R I O S FORMULARIOS Los controles de formulario nos ayudan a hacer más ágil y sencillo el manejo de una hoja de cálculo. Estos controles nos permiten conseguir que el aspecto visual de la
Más detallesICARO MANUAL DE LA EMPRESA
ICARO MANUAL DE LA EMPRESA 1. ENTRANDO EN ICARO Para acceder al Programa ICARO tendremos que entrar en http://icaro.ual.es Figura 1 A continuación os aparecerá la página de Inicio del aplicativo ICARO.
Más detallesMANUAL DE USUARIO DE LA APLICACIÓN DE ACREDITACION DE ACTIVIDADES DE FORMACION CONTINUADA. Perfil Entidad Proveedora
MANUAL DE USUARIO DE LA APLICACIÓN DE ACREDITACION DE ACTIVIDADES DE FORMACION CONTINUADA Perfil Entidad Proveedora El objetivo del módulo de Gestión de Solicitudes vía Internet es facilitar el trabajo
Más detalles... Formas alternativas de escribir un texto. Columnas. anfora CAPÍTULO 4
CAPÍTULO 4. Formas alternativas de escribir un texto........ Columnas Para fijar columnas se posiciona el Punto de Inserción donde se desee que comiencen las columnas, o bien se selecciona el texto que
Más detallesSOLUCION PARCIAL TASK SCHEDULER. Task Scheduler
Task Scheduler Se necesita modelar una aplicación que permita definir tareas y ejecutarlas en forma programada. Las tareas pueden ser: La ejecución de programa cualquiera o comando del sistema operativo,
Más detallesECUACION DE DEMANDA. El siguiente ejemplo ilustra como se puede estimar la ecuación de demanda cuando se supone que es lineal.
ECUACION DE DEMANDA La ecuación de demanda es una ecuación que expresa la relación que existe entre q y p, donde q es la cantidad de artículos que los consumidores están dispuestos a comprar a un precio
Más detallesUnidad I. 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal)
Unidad I Sistemas numéricos 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal) Los computadores manipulan y almacenan los datos usando interruptores electrónicos que están ENCENDIDOS o APAGADOS.
Más detallesAbelardo Pardo. Iria Estévez Ayres. Damaris Fuentes Lorenzo. Pablo Basanta Val. Pedro J. Muñoz Merino. Hugo A. Parada.
Arquitectura de sistemas Abelardo Pardo University of Sydney School of Electrical and Information Engineering NSW, 2006, Australia Autor principal del curso de 2009 a 2012 Iria Estévez Ayres Damaris Fuentes
Más detallesTema 2. Organizaciones de ficheros y estructuras de acceso
Tema 2. Organizaciones de ficheros y estructuras de acceso Ficheros y Bases de Datos 10 de junio de 2002 1. Introducción Este documento contiene preguntas del tema 2 recogidas por estudiantes de la asignatura
Más detallesCaracterísticas de funciones que son inversas de otras
Características de funciones que son inversas de otras Si f es una función inyectiva, llamamos función inversa de f y se representa por f 1 al conjunto. f 1 = a, b b, a f} Es decir, f 1 (x, y) = { x =
Más detallesLectura No. 3. Contextualización. Nombre: Página web DISEÑO DIGITAL 1. Para qué te sirve saber elaborar una página web?
Diseño Digital DISEÑO DIGITAL 1 Lectura No. 3 Nombre: Página web Contextualización Para qué te sirve saber elaborar una página web? A través de una página web puedes atraer a una mayor cantidad de clientes
Más detallesTutorial Básico de vbscript
Tutorial Básico de vbscript Bueno, primero aclarar que este tutorial, pretende explicar de manera básica las distintas instrucciones aplicadas en visual basic script (vbs de aquí en más), para que así
Más detallesCómo ordenar una lista de números?
Cómo ordenar una lista de números? Germán Ariel Torres Resumen. Este trabajo trata acerca de métodos y técnicas usadas para el ordenamiento eficiente de listas de números. Se analizan los métodos básicos,
Más detallesWINDOWS 2008 7: COPIAS DE SEGURIDAD
1.- INTRODUCCION: WINDOWS 2008 7: COPIAS DE SEGURIDAD Las copias de seguridad son un elemento fundamental para que el trabajo que realizamos se pueda proteger de aquellos problemas o desastres que pueden
Más detallesPROCEDIMIENTOS DE TÍTULOS. Para solicitar los títulos al finalizar determinadas enseñanzas es preciso seguir un proceso en la aplicación Plumier XXI.
PROCEDIMIENTOS DE TÍTULOS Para solicitar los títulos al finalizar determinadas enseñanzas es preciso seguir un proceso en la aplicación Plumier XXI. EVALUACIÓN Cuando se ha cursado el último curso de una
Más detallesPESTAÑA DATOS - TABLAS EN EXCEL
PESTAÑA DATOS - TABLAS EN EXCEL Una tabla en Excel es un conjunto de datos organizados en filas o registros, en la que la primera fila contiene las cabeceras de las columnas (los nombres de los campos),
Más detallesETS Caminos Santander. Curso 2012. Ejercicios de introducción a la programación.
Ejercicio 1. Saludo. El programa preguntará el nombre al usuario y a continuación le saludará de la siguiente forma "Hola, NOMBRE" donde NOMBRE es el nombre del usuario. Ejercicio 2. Suma. El programa
Más detallesMotores de Búsqueda Web Tarea Tema 2
Motores de Búsqueda Web Tarea Tema 2 71454586A Motores de Búsqueda Web Máster en Lenguajes y Sistemas Informáticos - Tecnologías del Lenguaje en la Web UNED 30/01/2011 Tarea Tema 2 Enunciado del ejercicio
Más detallesOperación de Microsoft Word
Generalidades y conceptos Combinar correspondencia Word, a través de la herramienta combinar correspondencia, permite combinar un documento el que puede ser una carta con el texto que se pretende hacer
Más detallesGUIA COMPLEMENTARIA PARA EL USUARIO DE AUTOAUDIT. Versión N 02 Fecha: 2011-Febrero Apartado: Archivos Anexos ARCHIVOS ANEXOS
ARCHIVOS ANEXOS Son los documentos, hojas de cálculo o cualquier archivo que se anexa a las carpetas, subcarpetas, hallazgos u otros formularios de papeles de trabajo. Estos archivos constituyen la evidencia
Más detalles7. Manejo de Archivos en C.
7. Manejo de Archivos en C. Los datos que hemos tratado hasta el momento han residido en la memoria principal. Sin embargo, las grandes cantidades de datos se almacenan normalmente en un dispositivo de
Más detallesÁrbol binario. Elaborado por Ricardo Cárdenas cruz Jeremías Martínez Guadarrama Que es un árbol Introducción
Árbol binario Elaborado por Ricardo Cárdenas cruz Jeremías Martínez Guadarrama Que es un árbol Introducción Un Árbol Binario es un conjunto finito de Elementos, de nombre Nodos de forma que: El Árbol Binario
Más detalles