CodeGym /Java blogg /Slumpmässig /Coding Skills LevelUp, del 2. Var man kan lära sig om alg...
John Squirrels
Nivå
San Francisco

Coding Skills LevelUp, del 2. Var man kan lära sig om algoritmer

Publicerad i gruppen
Fortsätter vår serie med artiklar om ytterligare programmeringsrelaterade ämnen som inte ingår i CodeGyms kurs, med länkar och rekommendationer om var du kan lära dig dem. Idag ska vi prata om algoritmer. Coding Skills LevelUp, del 2. Var man kan lära sig om algoritmer - 1

Vad är algoritmer

En algoritm i sig är inget annat än ett steg-för-steg-kvitto för att lösa ett problem. Majoriteten av de algoritmer som används i programmering idag har redan upptäckts, testats och bevisats. Algoritmer i Java är statiska metoder som används för att utföra olika operationer på samlingar. Om datastrukturer används av Java-programmerare för att lagra och organisera data, används algoritmer för att manipulera data i dessa strukturer. Så dessa två ämnen är knutna till varandra, och att förstå hur de fungerar tillsammans är ganska viktigt och kan göra din Java-kodning mycket mer effektiv. Algoritmer kan appliceras på alla programmeringsspråk, och starka erfarna programmerare förväntas normalt kunna åtminstone grunderna i detta ämne, samt veta hur man konverterar algoritmer till kod på det programmeringsspråk de använder.

Böcker om algoritmer

  1. Datastrukturer och algoritmer på ett enkelt sätt av Narasimha Karumanchi.

    En av de bästa läroböckerna för nybörjare i algoritmer (och datastrukturer). "Datastrukturer och algoritmer på ett enkelt sätt: Datastrukturer och algoritmiska pussel" är en bok som erbjuder lösningar på komplexa datastrukturer och algoritmer. Det finns flera lösningar för varje problem, och boken är kodad i C/C++. Du kan använda den här som en guide för att förbereda dig för intervjuer, tentor och campusarbete.

  2. Grokking Algorithms av Aditya Bhargava.

    "Grokking Algorithms" är en annan lättförståelig, fullt illustrerad och skriven i en vänlig tonguide som lär dig hur du tillämpar vanliga algoritmer på de praktiska problem du möter varje dag som programmerare. Du börjar med sortering och sökning och när du bygger upp dina färdigheter i att tänka algoritmiskt kommer du att ta itu med mer komplexa problem som datakomprimering och artificiell intelligens. Varje exempel inkluderar diagram och helt kommenterade kodexempel i Python.

  3. Algoritmer upplåsta av Thomas Cormen.

    En bok om grunderna i algoritmer för nybörjare och proffs inom kodning som vill utöka sina kunskaper i ämnet, denna gång skriven som en lärobok för MIT-studenter.

    "Läsarna kommer att lära sig vad datoralgoritmer är, hur man beskriver dem och hur man utvärderar dem. De kommer att upptäcka enkla sätt att söka information i en dator; metoder för att ordna om information i en dator i en föreskriven ordning ("sortering"); hur man löser grundläggande problem som kan modelleras i en dator med en matematisk struktur som kallas en "graf" (användbart för att modellera vägnät, beroenden mellan uppgifter och ekonomiska relationer); hur man löser problem som ställer frågor om teckensträngar som DNA-strukturer; de grundläggande principerna bakom kryptografi; grunderna för datakomprimering; och även att det finns några problem som ingen har kommit på hur man löser på en dator inom rimlig tid”, säger bokens författare.

  4. Datastrukturer och algoritmer i Java av Robert Lafore.

    Och här är en lärobok som fokuserar specifikt på Java. Förutom tydliga och enkla exempelprogram lade Robert Lafore till boken en workshop som ett litet demonstrationsprogram körbart på en webbläsare. Programmen visar i grafisk form hur datastrukturer ser ut och hur de fungerar.

    Föreslagna lösningar på programmeringsprojekten som finns i slutet av varje kapitel görs tillgängliga för instruktörer vid erkända utbildningsinstitutioner. Detta pedagogiska tillägg till läroboken finns på pearson.com , i Instructor Resource Center.

  5. Hello World: Being Human in the Age of Algorithms av Hannah Fry.

    'Hello World: Being Human in the Age of Algorithms' av Hannah Fry är en ganska intressant bok som ser på algoritmer från ett lite annorlunda perspektiv. Författaren beskriver verkliga krafter och begränsningar hos de algoritmer som redan automatiserar viktiga beslut inom sjukvård, transporter, kriminalitet och handel.

Onlinekurser om algoritmer

  1. Algoritmer, del I , del II av Princeton University via Coursera.

    En ganska bra helt gratis kurs från Princeton. Den täcker den väsentliga information som varje seriös programmerare behöver veta om algoritmer och datastrukturer, med tonvikt på applikationer och vetenskaplig prestandaanalys av Java-implementeringar. Del I täcker elementära datastrukturer, sorterings- och sökalgoritmer. Del II fokuserar på graf- och strängbearbetningsalgoritmer. Kursen ger inget certifikat efter avslutad kurs.

  2. Specialiseringsprogram för datastrukturer och algoritmer av UC San Diego via Coursera.

    Ytterligare ett välrenommerat kursprogram om algoritmer och datastrukturer som erbjuds av University of California, San Diego och National Research Institute Higher School of Economics. Denna specialisering är en blandning av teori och praktik: du kommer att lära dig algoritmiska tekniker för att lösa olika beräkningsproblem och kommer att implementera cirka 100 algoritmiska kodningsproblem i ett valfritt programmeringsspråk.

    "Ingen annan onlinekurs i Algoritmer är ens i närheten av att erbjuda dig en mängd programmeringsutmaningar som du kan möta vid din nästa anställningsintervju. För att förbereda dig har vi investerat över 3000 timmar på att utforma våra utmaningar som ett alternativ till flervalsfrågor som du vanligtvis hittar i MOOCs. Tyvärr, vi tror inte på flervalsfrågor när det gäller att lära sig algoritmer...eller något annat inom datavetenskap! För varje algoritm du utvecklar och implementerar har vi utformat flera tester för att kontrollera dess korrekthet och körtid – du måste felsöka dina program utan att ens veta vad dessa tester är! Det kan låta svårt, men vi tror att det är det enda sättet att verkligen förstå hur algoritmerna fungerar och att bemästra konsten att programmera”, sa kursförfattarna.

  3. Algorithms Specialization av Stanford University via Coursera.

    Och den tredje välkända gratis algoritmkursen från en välrenommerad uni, Stanford University den här gången. Den här kursen är en introduktion till algoritmer för elever med åtminstone lite erfarenhet av programmering. Eleverna kommer att öva och bemästra grunderna i algoritmer genom flera typer av bedömningar. Varje vecka finns det ett flervalsquiz för att testa din förståelse för de viktigaste begreppen. Det finns också veckovisa programmeringsuppgifter, där du implementerar en av de algoritmer som behandlas i föreläsningen i ett programmeringsspråk som du väljer. Varje kurs avslutas med ett flervalsprov.

YouTube-kanaler och spellistor

  1. Algoritmer av Abdul Bari.

    En lista med korta föreläsningar om algoritmer av Abdul Bari, en ganska populär YouTuber som förklarar komplexa ämnen på de mest enkla och lättförståeliga sätten för sina tittare.

  2. Datastrukturer och algoritmer i Java om programmering med Mosh-kanal.

    "Programmering med Mosh" är en populär mainstream YouTube-kanal för nybörjare som programmerar. Den har massor av handledningar om Java och andra programmeringsspråk, de är välstrukturerade och välpresenterade, inklusive handledningen om datastrukturer och algoritmer. Ett bra sätt att sätta sig in i dessa ämnen om du inte känner för att läsa böcker och betala för kurser.

  3. MIT 6.006 Introduction to Algorithms, hösten 2011 av MIT OpenCourseWare

    MIT OpenCourseWare är en kanal från Massachusetts Institute of Technology, och den har massor av fantastiska gratis videokurser, inklusive den om algoritmer. Hela kursen består av 47 tillfällen på cirka en timme.

Kommentarer
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION