Evaluare:
Recenziile pentru această carte evidențiază un amestec de conținut util și probleme semnificative. În timp ce unii cititori apreciază prezentarea amănunțită a algoritmilor și structurilor de date, în special pentru programatorii de nivel upper-intermediate, alții o critică aspru pentru numeroasele greșeli de scriere, formatul slab și lipsa de aderență la standardele moderne C++.
Avantaje:⬤ Informații bune despre paradigme celebre de algoritmi și structuri de date
⬤ explicații clare ale subiectelor complexe
⬤ exerciții interesante cu descrieri pas cu pas
⬤ potrivit pentru programatorii de nivel upper-intermediate
⬤ limbaj accesibil în comparație cu documentația tehnică.
⬤ Plin de greșeli de scriere și probleme de formatare în fragmente de cod
⬤ conține cod C++11 neidiomatic
⬤ include practici de programare greșite precum variabilele globale
⬤ nu este potrivit pentru începători
⬤ considerat de unii o risipă de bani datorită cantității de erori.
(pe baza a 4 recenzii ale cititorilor)
C++ Data Structures and Algorithm Design Principles
Începeți să vă familiarizați cu programarea C++ învățând cum să creați aplicații folosind structurile de date și algoritmii săi Caracteristici cheie Explorați structuri de date precum array-uri, stive și grafice cu ajutorul unor exemple reale Studiați compromisurile dintre algoritmi și structuri de date și descoperiți ce funcționează și ce nu Descoperiți cum tehnici precum bloom filters și multi-way heaps stimulează aplicațiile din lumea reală Descrierea cărții
C++ este un limbaj de programare multiparadigmă matur care vă permite să scrieți cod de nivel înalt cu un grad ridicat de control asupra hardware-ului. Astăzi, părți semnificative ale infrastructurii software, inclusiv baze de date, browsere, cadre multimedia și toolkits GUI, sunt scrise în C++.
Această carte începe prin introducerea structurilor de date C++ și a modului de stocare a datelor folosind liste legate, matrici, stive și cozi. În capitolele următoare, cartea explică paradigmele de proiectare a algoritmilor de bază, cum ar fi abordarea lacomă și abordarea divide și cucerește, care sunt utilizate pentru a rezolva o mare varietate de probleme de calcul. În cele din urmă, veți învăța tehnica avansată a programării dinamice pentru a dezvolta implementări optimizate ale mai multor algoritmi discutați în carte.
Până la sfârșitul acestei cărți, veți fi învățat cum să implementați structuri de date și algoritmi standard în cod C++ 14 eficient și scalabil. Ce veți învăța Construiți aplicații utilizând tabele hash, dicționare și seturi Explorați modul în care hardware-ul modern afectează performanța reală a programelor în timpul execuției Aplicați algoritmi comuni, cum ar fi heapsort și merge sort pentru tipuri de date de tip string Utilizați metaprogramarea șabloanelor C++ pentru a scrie biblioteci de cod Implementați un serviciu de scurtare URL utilizând un filtru bloom Utilizați idiomuri C++ moderne adecvate, cum ar fi std:: array în loc de array-uri în stil C C Cui se adresează această carte
Această carte este destinată dezvoltatorilor sau studenților care doresc să revadă structurile de date de bază și tehnicile de proiectare a algoritmilor. Deși nu sunt necesare cunoștințe de matematică, cunoștințele de bază despre clasele de complexitate și notația Big O împreună cu o calificare la un curs de algoritmi vă vor ajuta să profitați la maximum de această carte. Se presupune familiarizarea cu standardul C++ 14. Cuprins Liste, stive și cozi Arbori, grămezi și grafice Tabele Hash și filtre Bloom Divide și cucerește Algoritmi greoaie Algoritmi grafici I Algoritmi grafici II Programare dinamică I Programare dinamică II
© Book1 Group - toate drepturile rezervate.
Conținutul acestui site nu poate fi copiat sau utilizat, nici parțial, nici integral, fără permisiunea scrisă a proprietarului.
Ultima modificare: 2024.11.08 07:02 (GMT)