Inom datavetenskap står algoritmer och datastrukturer för funktion och lagring av datainsamling. Kunskap om kodning och tillämpad matematik är användbart för att lära sig strukturerna. Men det finns faktiskt många böcker för nybörjare också. Många av böckerna fokuserar på en specifik struktur för att underlätta inlärningen. Arbetsexempel och kod används för att ge stöd till teorin bakom ämnet. När du väl börjat begripa grunderna i datavetenskap är det dags för nästa stora steg, att lära dig algoritmer.
Här tar vi upp ett antal böcker om algoritmer och strukturer som passar olika nivåer, från nybörjare till användare på medelnivå och avancerade användare.
1. Introduction to Algorithms av Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest och Clifford Stein
Författare: Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest och Clifford Stein
Webbplats: Amazon
Introduction to Algorithms är en omfattande översikt av och guide till algoritmer i stort. Den fungerar som ett uppslagsverk för moderna algoritmer och täcker utförligt allting mellan teori och praktik på drygt 1 000 sidor.
Boken är praktiskt upplagd. Den presenterar problem med hjälp av diagram och tester, implementerar algoritmer och analyserar sedan teorin bakom resultaten. Den förutsätter en viss förtrogenhet med matte och datastrukturer och erbjuder ivriga läsare mycket att bita i.
2. Algorithms Unlocked av Thomas H. Cormen
Författare: Thomas H. Cormen
Webbplats: Amazon
I sin bok Algorithms Unlocked försöker författaren Thomas Cormen ta bort mystiken kring teknik och avslöja hemligheterna bakom hur det fungerar. Många saker som vi tar för givna, som automatiserade GPS-rutter och internetkryptering, fungerar med hjälp av tillämpade algoritmer.
Thomas Cormen förklarar i den här boken hur datorer använder algoritmer för att lösa problem och för många andra tekniska uppgifter som vi ser varje dag. Han går därefter mer detaljerat in på vad datoralgoritmer egentligen är och lär läsarna hur de kan användas för att utföra enkla uppgifter som att söka, sortera och göra diagram. Boken är en verklig tillgång för den som är intresserad av hur algoritmer fungerar idag.
3. The Algorithm Design Manual av Steven S. Skiena
Författare: Steven S. Skiena
Webbplats: Amazon
The Algorithm Design Manual är en introduktion till hur du kan skapa algoritmer från grunden. Inte nog med att den behandlar teorin bakom algoritmdesign, den använder även exempel och verkliga övningar som referenser. Skiena introducerar ”pseudokod” som är tänkt som övergång mellan de olika programmeringsspråk som används i algoritmer. Författaren täcker in en mängd olika moderna algoritmer som grafteori, datorstödd geometri och multitrådade algoritmer.
Boken är indelad i två avsnitt: tekniker och resurser. Den första delen (tekniker) utbildar läsaren i design och analys av algoritmer. I den andra delen (resurser) får läsaren ett stort antal hänvisningar till resurser, med 75 av de vanligaste algoritmproblemen, samt implementeringar i C/C++ och Java att återkomma till vid behov.
4. Data Structures and Algorithms Made Easy: Data Structures and Algorithmic Puzzles av Narasimha Karumanchi
Författare: Narasimha Karumanchi
Webbplats: Amazon
Den här boken fungerar mer som en guide för att fräscha upp kunskaperna inom områden där du kommer att sättas på prov, till exempel för intervjuer, prov eller certifieringar. I boken diskuteras även vanliga algoritmproblem och lösningar på dem. Den ger grunderna i datastrukturer och hur algoritmer fungerar och lär dessutom läsarna att skriva egna.
Det krävs kunskaper i matematik och C/C++-kod för att genomföra uppgifterna. Med sina drygt 400 sidor och 20 kapitel fungerar den här boken huvudsakligen som en arbetsbok för att lösa algoritmiska problem.
5. Grokking Algorithms: An illustrated guide for programmers and other curious people av Aditya Bhargava
Författare: Aditya Bhargava
Webbplats: Amazon
Det här är en lättfattlig bok för programmerare som vill lära sig lite mer om algoritmer och hur man löser vanliga problem. Boken tar upp några av de vanligaste och mest praktiska algoritmerna som sortering och sökning, och går vidare till svårare problem med datakomprimering och artificiell intelligens.
Illustrationerna som åtföljer algoritmerna är bra för de som lär sig på ett visuellt sätt, och genomgångarna förklarar varje process steg för steg. Varje exempel innehåller kodexempel i Python. Boken är inte avsedd för absoluta nybörjare, men kan fungera som en guide eller repetition för dem som har programmeringskunskaper.
6. Algorithms av Robert Sedgewick och Kevin Wayne
Författare: Robert Sedgewick och Kevin Wayne
Webbplats: Amazon
Algorithms är en enkel titel på en inte fullt så enkel bok. Det kortfattade namnet motsvarar inte bokens omfång och djup. Den här uttömmande läroboken går igenom algoritmer och datastrukturer in i minsta detalj, vilket gör den till en heltäckande resurs för akademiska sammanhang. Den innehåller till och med en onlineportal med fullständig källkod.
Boken tar upp olika datatyper och hur de sorteras och analyseras, och fokuserar på algoritmer som är viktiga för sökning, sortering och bearbetning. Det finns en kompletterande webbplats med övningar, testdata, visualiseringar och den fullständiga Javakoden där du kan jobba praktiskt också. Boken fungerar som lärobok för de som börjar studera ämnet på högskolor och universitet.
7. Advanced Data Structures av Peter Brass
Författare: Peter Brass
Webbplats: Amazon
Boken Advanced Data Structures fokuserar på hur viktiga datastrukturer är i algoritmer och sökoptimering. Det är ingen bok för veklingar, texten håller forskarnivå och är avsedd för dem som arbetar med datavetenskap. Den går på djupet med komplexiteten i datalager inom dataanalys.
I boken behandlas olika datastrukturer och varianter detaljerat med diskussioner om stacks, köer, hashtabeller, sökträd med mera. Den omfattar till och med mer specialiserade strukturer som intervallträd. Kapitlen innehåller även exempel på fungerande kod i C och referenser som stöd för arbetet. Det är en lärobok om komplexiteten i datalagring, så den är både omfattande och har en hög detaljnivå.
8. Automate This: How Algorithms Came To Rule Our World av Christopher Steiner
Författare: Christopher Steiner
Webbplats: Chris Steiner | Amazon
Det här är egentligen varken en referensbok eller introduktionsmanual, som de flesta böcker om algoritmer. Det är snarare en historisk betraktelse av hur algoritmer har blivit alltmer framträdande i våra liv så till den grad att de automatiserar även kvalificerade uppgifter som brukade utföras manuellt.
Idag hjälper algoritmer till att köra bilar, förhöjer underhållningsmedier och förutsäger mänskligt beteende. Den här boken är mer av en granskning och kommentar för att placera mysteriet med algoritmer i ett tillgängligt kulturellt sammanhang.
Ansvarsfriskrivning: Tableau ger inget officiellt stöd till några av de produkter eller åsikter som listas på den här webbsidan. Inte heller är några partnerprogram länkade till den här sidan. Den här artikeln är endast avsedd för utbildningsändamål och ovanstående information om produkter och publikationer görs tillgänglig så att läsare kan fatta välgrundade beslut på egen hand.