Algorithms and Data Structures in Action
Autor Marcello La Roccaen Limba Engleză Paperback – 15 iul 2021
Provocarea majoră a oricărui inginer software apare atunci când soluțiile standard nu mai fac față volumului de date sau cerințelor de performanță. Descoperim aici că multe dintre aceste obstacole, care par inițial insurmontabile, au deja rezolvări bine documentate în informatica avansată. În volumul Algorithms and Data Structures in Action, Marcello La Rocca ne ghidează prin procesul de selecție și adaptare a algoritmilor complecși pentru aplicații reale, trecând dincolo de conceptele introductive. Spre deosebire de Beginning Algorithms de Simon Harris, care pune bazele fundamentale și explică sortările clasice, lucrarea de față se concentrează pe tehnici de nișă și optimizări de înalt nivel. Dacă Data Structures and Algorithms Made Easy v-a oferit un set vast de probleme pentru interviuri, această carte oferă instrumentele practice pentru a construi sisteme de producție scalabile. Reținem abordarea pragmatică a autorului, care utilizează pseudo-cod și exemple multi-limbaj pentru a explica structuri precum k-d trees, S-trees sau algoritmi de clustering, esențiale în căutarea celor mai apropiați vecini (nearest neighbour search). Publicată de Manning Publications, cartea reflectă experiența vastă a autorului în optimizarea sistemelor la companii precum Microsoft și Twitter. Nu este doar un inventar de algoritmi, ci un manual de strategie tehnică. Învățăm cum să îmbunătățim cozile de prioritate și să implementăm mecanisme de caching care reduc drastic latența. Stilul este unul tehnic și aplicat, facilitând tranziția de la programarea intermediară la cea de expert prin înțelegerea profundă a modului în care datele sunt stocate și procesate eficient.
Preț: 396.11 lei
Preț vechi: 495.14 lei
-20%
Carte disponibilă
Livrare economică 28 septembrie-12 octombrie
Livrare express 11-17 septembrie pentru 72.100 lei
Specificații
ISBN-10: 1617295485
Pagini: 768
Dimensiuni: 185 x 235 x 42 mm
Greutate: 1.4 kg
Editura: Manning Publications
De ce să citești această carte
Recomandăm această carte programatorilor care doresc să depășească nivelul de bază al algoritmilor clasici. Veți câștiga o înțelegere practică asupra structurilor de date avansate, esențiale pentru optimizarea performanței în aplicații complexe. Este un ghid indispensabil pentru cei care lucrează cu volume mari de date sau sisteme care necesită căutare rapidă și caching inteligent, oferind soluții gata de adaptat în orice limbaj de programare.
Descriere scurtă
Summary
As a software engineer, you’ll encounter countless programming challenges that initially seem confusing, difficult, or even impossible. Don’t despair! Many of these “new” problems already have well-established solutions. Advanced Algorithms and Data Structures teaches you powerful approaches to a wide range of tricky coding challenges that you can adapt and apply to your own applications. Providing a balanced blend of classic, advanced, and new algorithms, this practical guide upgrades your programming toolbox with new perspectives and hands-on techniques.
About the technology
Can you improve the speed and efficiency of your applications without investing in new hardware? Well, yes, you can: Innovations in algorithms and data structures have led to huge advances in application performance. Pick up this book to discover a collection of advanced algorithms that will make you a more effective developer.
About the book
Advanced Algorithms and Data Structures introduces a collection of algorithms for complex programming challenges in data analysis, machine learning, and graph computing. You’ll discover cutting-edge approaches to a variety of tricky scenarios. You’ll even learn to design your own data structures for projects that require a custom solution.
What's inside
Build on basic data structures you already know
Profile your algorithms to speed up application
Store and query strings efficiently
Distribute clustering algorithms with MapReduce
Solve logistics problems using graphs and optimization algorithms
About the reader
For intermediate programmers.
About the author
Marcello La Rocca is a research scientist and a full-stack engineer. His focus is on optimization algorithms, genetic algorithms, machine learning, and quantum computing.
Table of Contents
1 Introducing data structures
PART 1 IMPROVING OVER BASIC DATA STRUCTURES
2 Improving priority queues: d-way heaps
3 Treaps: Using randomization to balance binary search trees
4 Bloom filters: Reducing the memory for tracking content
5 Disjoint sets: Sub-linear time processing
6 Trie, radix trie: Efficient string search
7 Use case: LRU cache
PART 2 MULTIDEMENSIONAL QUERIES
8 Nearest neighbors search
9 K-d trees: Multidimensional data indexing
10 Similarity Search Trees: Approximate nearest neighbors search for image retrieval
11 Applications of nearest neighbor search
12 Clustering
13 Parallel clustering: MapReduce and canopy clustering
PART 3 PLANAR GRAPHS AND MINIMUM CROSSING NUMBER
14 An introduction to graphs: Finding paths of minimum distance
15 Graph embeddings and planarity: Drawing graphs with minimal edge intersections
16 Gradient descent: Optimization problems (not just) on graphs
17 Simulated annealing: Optimization beyond local minima
18 Genetic algorithms: Biologically inspired, fast-converging optimization