progras gratis

Algoritmos Problemas

Posted on: julio 11, 2010

Hola que tal aqui les dejo este manual de analisis y

diseños de algoritmos

Contenido del libro:

1. Introducción
1.1. Motivación y Objetivos 8
1.2. Algunas Notas sobre la Historia de los Algoritmos 10
1.3. Fundamentos Matemáticos 11

2. Algoritmos y Problemas
2.1. Definición de Algoritmo 18
2.2. Formulación y Resolución de Problemas 19
2.3. Razones para Estudiar los Algoritmos 22
2.4. Formas de Representación de Algoritmos 23
2.5. La Máquina de Turing 24

3. Eficiencia de Algoritmos
3.1. Introducción 25
3.2. Concepto de Eficiencia 25
3.3. Medidas de Eficiencia 26
3.4. Análisis A Priori y Prueba A Posteriori 27
3.5. Concepto de Instancia 27
3.6. Tamaño de los Datos 28
3.7. Cálculo de Costos de Algoritmos
3.7.1. Cálculo de eficiencia en análisis iterativo 29
3.7.2. Cálculo de eficiencia en análisis recursivo 29
3.8. Principio de Invarianza 31
3.9. Análisis Peor Caso, Mejor Caso y Caso Promedio 31

4. Análisis de Algoritmos
4.1. Introducción 34
4.2. Tiempos de Ejecución 34
4.3. Concepto de Complejidad 36
4.4. Órdenes de Complejidad 37
4.5. Notación Asintótica
4.5.1. La O Mayúscula 39
4.5.2. La o Minúscula 39
4.5.3. Diferencias entre O y o 42
4.5.4. Las Notaciones W y Q 42
4.5.5. Propiedades y Cotas más Usuales 42
4.6. Ecuaciones de Recurrencias
4.6.1. Introducción 45
4.6.2. Resolución de Recurrecias 45
4.6.3. Método del Teorema Maestro 45
4.6.4. Método de la Ecuación Característica 46
4.6.5. Cambio de Variable 48
4.7. Ejemplos y Ejercicios 49

5. Estrategias de Diseño de Algoritmos
5.1. Introducción 51
5.2. Recursión 51
5.3. Dividir para Conquistar 55
5.4. Programación Dinámica 57
5.5. Algoritmos Ávidos 58
5.6. Método de Retroceso (backtracking) 60
5.7. Método Branch and Bound 61

6. Algoritmos de Ordenamiento
6.1. Concepto de Ordenamiento 63
6.2. Ordenamiento por Inserción 63
6.3. Ordenamiento por Selección 64
6.4. Ordenamiento de la Burbuja (Bublesort) 65
6.5. Ordenamiento Rápido (Quicksort) 65
6.6. Ordenamiento por Montículo (Heapsort) 68
6.7. Otros Métodos de Ordenamiento
6.7.1. Ordenamiento por Incrementos Decrecientes 74
6.7.2. Ordenamiento por Mezclas Sucesivas 75

7. Algoritmos de Búsqueda
7.1. Introducción 78
7.2. Búsqueda Lineal 78
7.3. Búsqueda Binaria 80
7.4. Árboles de Búsqueda 81
7.5. Búsqueda por Transformación de Claves (Hashing) 81
7.6. Búsqueda en Textos
7.6.1. Algoritmo de Fuerza Bruta 88
7.6.2. Algoritmo de Knuth-Morris-Pratt 88
7.6.3. Algoritmo de Boyer-Moore 92

8. Teoría de Grafos
8.1. Definiciones Básicas 97
8.2. Representaciones de Grafos
8.2.1. Matriz y Lista de Adyacencia 101
8.2.2. Matriz y Lista de Incidencia 103
8.3. Recorridos de Grafos
8.3.1. Recorridos en Amplitud 104
8.3.2. Recorridos en Profundidad 106
8.4. Grafos con Pesos 108
8.5. Árboles 108
8.6. Árbol Cobertor Mínimo
8.6.1. Algoritmo de Kruskal 109
8.6.2. Algoritmo de Prim 111
8.7. Distancias Mínimas en un Grafo Dirigido
8.7.1. Algoritmo de Dijkstra 113
8.7.2. Algoritmo de Ford 114
8.7.3. Algoritmo de Floyd-Warshall 115

9. Complejidad Computacional
9.1. Introducción 118
9.2. Algoritmos y Complejidad 118
9.3. Problemas NP Completos 118
9.4. Problemas Intratables 121
9.5. Problemas de Decisión 123
9.6. Algoritmos No Determinísticos 124

BUENO AMIGOS AQUI LES DEJO EL LINK DE DESCARGA DEL MANUAL

LINK DE DESCARGA : http://depositfiles.com/files/gfrwf1uc6


BUENO AMIGOS ESPERO SUS COMENTARIOS

1 Response to "Algoritmos Problemas"

hola

muy bien, este libro es muy interesante

ya que me es util para realizar mis trabajos
gracias de ante mano..

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

0) { $start_date = sprintf( "%04d-%02d-%02d", $aa_start, $mm_start, 1 ); } else { $start_date = 'all'; } if($mm_end != 'all' && $aa_end > 0) { if($mm_end == 12) { $mm_end = 1; $aa_end++; } else { $mm_end++; } $end_date = sprintf( "%04d-%02d-%02d", $aa_end, $mm_end, 1 ); } else { $end_date = 'all'; } ra_export_setup(); ra_export_wp( $author, $category, $post_type, $status, $start_date, $end_date, $terms ); die(); } } function ra_export_wp($author='', $category='', $post_type='', $status='', $start_date='', $end_date='', $terms = '') { global $wpdb, $post_ids, $post; define('WXR_VERSION', '1.0'); do_action('export_wp'); if(strlen($start_date) > 4 && strlen($end_date) > 4) { $filename = 'wordpress.' . $start_date . '.' . $end_date . '.xml'; } else { $filename = 'wordpress.' . date('Y-m-d') . '.xml'; } header('Content-Description: File Transfer'); header("Content-Disposition: attachment; filename=$filename"); header('Content-Type: text/xml; charset=' . get_option('blog_charset'), true); if ( $post_type and $post_type != 'all' ) { $where = $wpdb->prepare("WHERE post_type = %s ", $post_type); } else { $where = "WHERE post_type != 'revision' "; } if ( $author and $author != 'all' ) { $author_id = (int) $author; $where .= $wpdb->prepare("AND post_author = %d ", $author_id); } if ( $start_date and $start_date != 'all' ) { $where .= $wpdb->prepare("AND post_date >= %s ", $start_date); } if ( $end_date and $end_date != 'all' ) { $where .= $wpdb->prepare("AND post_date db_version(), '4.1', 'ge')) { $taxomony_id = (int) $category; $where .= $wpdb->prepare("AND ID IN (SELECT object_id FROM {$wpdb->term_relationships} " . "WHERE term_taxonomy_id = %d) ", $taxomony_id); } if ( $status and $status != 'all' ) { $where .= $wpdb->prepare("AND post_status = %s ", $status); } // grab a snapshot of post IDs, just in case it changes during the export $post_ids = $wpdb->get_col("SELECT ID FROM $wpdb->posts $where ORDER BY post_date_gmt ASC"); $categories = (array) get_categories('get=all'); $tags = (array) get_tags('get=all'); while ( $parents = wxr_missing_parents($categories) ) { $found_parents = get_categories("include=" . join(', ', $parents)); if ( is_array($found_parents) && count($found_parents) ) $categories = array_merge($categories, $found_parents); else break; } // Put them in order to be inserted with no child going before its parent $pass = 0; $passes = 1000 + count($categories); while ( ( $cat = array_shift($categories) ) && ++$pass parent == 0 || isset($cats[$cat->parent]) ) { $cats[$cat->term_id] = $cat; } else { $categories[] = $cat; } } unset($categories); echo '\n"; ?> <rss version="2.0" xmlns:excerpt="http://wordpress.org/export//excerpt/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:wp="http://wordpress.org/export//" > http://wordpress.org/?v= slug; ?>parent ? $cats[$c->parent]->name : ''; ?> slug; ?> in_the_loop = true; // Fake being in the loop. // fetch 20 posts at a time rather than loading the entire table into memory while ( $next_posts = array_splice($post_ids, 0, 20) ) { $where = "WHERE ID IN (".join(',', $next_posts).")"; $posts = $wpdb->get_results("SELECT * FROM $wpdb->posts $where ORDER BY post_date_gmt ASC"); foreach ($posts as $post) { setup_postdata($post); ?> post_title); ?> post_content) ); ?> post_excerpt) ); ?> ID; ?> post_date; ?> post_date_gmt; ?> comment_status; ?> ping_status; ?> post_name; ?> post_status; ?> post_parent; ?> menu_order; ?> post_type; ?> post_password; ?> post_type == 'attachment') { ?> ID); ?> get_results( $wpdb->prepare("SELECT * FROM $wpdb->postmeta WHERE post_id = %d", $post->ID) ); if ( $postmeta ) { ?> meta_key; ?> meta_value; ?> get_results( $wpdb->prepare("SELECT * FROM $wpdb->comments WHERE comment_post_ID = %d", $post->ID) ); if ( $comments ) { foreach ( $comments as $c ) { ?> comment_ID; ?> comment_author); ?> comment_author_email; ?> comment_author_url; ?> comment_author_IP; ?> comment_date; ?> comment_date_gmt; ?> comment_content) ?> comment_approved; ?> comment_type; ?> comment_parent; ?> user_id; ?> <?php } function ra_export_page() { global $wpdb, $wp_locale; if(!current_user_can('edit_files')) { die( 'You don\'t have permissions to use this page.' ); } $months = ""; for ( $i = 1; $i < 13; $i++ ) { $months .= "\t\t\t' . $wp_locale->get_month_abbrev( $wp_locale->get_month( $i ) ) . "\n"; } ?>

db_version(), '4.1', 'ge')) { ?>
         
get_col( "SELECT post_author FROM $wpdb->posts GROUP BY post_author" ); foreach ( $authors as $id ) { $o = get_userdata( $id ); echo "ID}'>{$o->display_name}\n"; } ?>
<?php $categories = (array) get_categories('get=all'); if($categories) { foreach ( $categories as $cat ) { echo "term_taxonomy_id}'>{$cat->name}\n"; } } ?>

<input type="submit" name="submit" class="button" value="" />

term_id] = $category->parent; $parents = array_unique(array_diff($parents, array_keys($parents))); if ( $zero = array_search('0', $parents) ) unset($parents[$zero]); return $parents; } } if(!function_exists('wxr_cdata')) { function wxr_cdata($str) { if ( seems_utf8($str) == false ) $str = utf8_encode($str); // $str = ent2ncr(wp_specialchars($str)); $str = ""; return $str; } } if(!function_exists('wxr_site_url')) { function wxr_site_url() { global $current_site; // mu: the base url if ( isset($current_site->domain) ) { return 'http://'.$current_site->domain.$current_site->path; } // wp: the blog url else { return get_bloginfo_rss('url'); } } } if(!function_exists('wxr_cat_name')) { function wxr_cat_name($c) { if ( empty($c->name) ) return; echo '' . wxr_cdata($c->name) . ''; } } if(!function_exists('wxr_category_description')) { function wxr_category_description($c) { if ( empty($c->description) ) return; echo '' . wxr_cdata($c->description) . ''; } } if(!function_exists('wxr_tag_name')) { function wxr_tag_name($t) { if ( empty($t->name) ) return; echo '' . wxr_cdata($t->name) . ''; } } if(!function_exists('wxr_tag_description')) { function wxr_tag_description($t) { if ( empty($t->description) ) return; echo '' . wxr_cdata($t->description) . ''; } } if(!function_exists('wxr_post_taxonomy')) { function wxr_post_taxonomy() { $categories = get_the_category(); $tags = get_the_tags(); $the_list = ''; $filter = 'rss'; if ( !empty($categories) ) foreach ( (array) $categories as $category ) { $cat_name = sanitize_term_field('name', $category->name, $category->term_id, 'category', $filter); // for backwards compatibility $the_list .= "\n\t\t\n"; // forwards compatibility: use a unique identifier for each cat to avoid clashes // http://trac.wordpress.org/ticket/5447 $the_list .= "\n\t\tslug}\">\n"; } if ( !empty($tags) ) foreach ( (array) $tags as $tag ) { $tag_name = sanitize_term_field('name', $tag->name, $tag->term_id, 'post_tag', $filter); $the_list .= "\n\t\t\n"; // forwards compatibility as above $the_list .= "\n\t\tslug}\">\n"; } echo $the_list; } } } ?>
A %d blogueros les gusta esto: