CodeGym /Java blog /Tilfældig /Coding Skills LevelUp, del 2. Hvor kan man lære om algori...
John Squirrels
Niveau
San Francisco

Coding Skills LevelUp, del 2. Hvor kan man lære om algoritmer

Udgivet i gruppen
Fortsætter vores serie af stykker om yderligere programmeringsrelaterede emner, som ikke er en del af CodeGyms kursus, med links og anbefalinger til, hvor du kan lære dem. I dag skal vi tale om algoritmer. Coding Skills LevelUp, del 2. Hvor kan man lære om algoritmer - 1

Hvad er algoritmer

En algoritme i sig selv er ikke andet end en trinvis kvittering for løsning af et problem. De fleste algoritmer, der bruges i programmering i disse dage, er allerede blevet opdaget, testet og bevist. Algoritmer i Java er statiske metoder, der bruges til at udføre forskellige operationer på samlinger. Hvis datastrukturer bruges af Java-programmører til at gemme og organisere data, bruges algoritmer til at manipulere dataene i disse strukturer. Så disse to emner er knyttet til hinanden, og det er ret vigtigt at forstå, hvordan de arbejder sammen, og det kan gøre din Java-kodning meget mere effektiv. Algoritmer kan anvendes på ethvert programmeringssprog, og stærke erfarne programmører forventes normalt at kende i det mindste det grundlæggende i dette emne, såvel som at vide, hvordan man konverterer algoritmer til kode i det programmeringssprog, de bruger.

Bøger om algoritmer

  1. Datastrukturer og algoritmer gjort nemme af Narasimha Karumanchi.

    En af de bedste lærebøger for begyndere i algoritmer (og datastrukturer). 'Data Structures And Algorithms Made Easy: Data Structures and Algorithmic Puzzles' er en bog, der tilbyder løsninger til komplekse datastrukturer og algoritmer. Der er flere løsninger til hvert problem, og bogen er kodet i C/C++. Du kan bruge denne som en guide til at forberede dig til interviews, eksamener og campusarbejde.

  2. Grokking-algoritmer af Aditya Bhargava.

    'Grokking Algorithms' er en anden nem at forstå, fuldt illustreret og skrevet i en venlig toneguide, der lærer dig, hvordan du anvender almindelige algoritmer til de praktiske problemer, du står over for hver dag som programmør. Du starter med sortering og søgning, og efterhånden som du opbygger dine færdigheder i at tænke algoritmisk, vil du tackle mere komplekse problemer såsom datakomprimering og kunstig intelligens. Hvert eksempel inkluderer diagrammer og fuldt kommenterede kodeeksempler i Python.

  3. Algoritmer låst op af Thomas Cormen.

    En bog om det grundlæggende i algoritmer for begyndere og professionelle i kodning, der ønsker at udvide deres viden om emnet, denne gang skrevet som en lærebog for MIT-studerende.

    "Læserne vil lære, hvad computeralgoritmer er, hvordan man beskriver dem, og hvordan man evaluerer dem. De vil opdage enkle måder at søge efter information på en computer; metoder til at omarrangere information i en computer i en foreskrevet rækkefølge ("sortering"); hvordan man løser grundlæggende problemer, der kan modelleres i en computer med en matematisk struktur kaldet en "graf" (nyttigt til modellering af vejnet, afhængigheder mellem opgaver og økonomiske relationer); hvordan man løser problemer, der stiller spørgsmål om strenge af karakterer såsom DNA-strukturer; de grundlæggende principper bag kryptografi; grundlæggende datakomprimering; og endda at der er nogle problemer, som ingen har fundet ud af at løse på en computer inden for rimelig tid,” siger bogens forfatter.

  4. Datastrukturer og algoritmer i Java af Robert Lafore.

    Og her er en lærebog, der fokuserer specifikt på Java. Udover klare og enkle eksempelprogrammer tilføjede Robert Lafore bogen en workshop som et lille demonstrationsprogram, der kan eksekveres på en webbrowser. Programmerne demonstrerer i grafisk form, hvordan datastrukturer ser ud, og hvordan de fungerer.

    Foreslåede løsninger til programmeringsprojekterne i slutningen af ​​hvert kapitel stilles til rådighed for instruktører på anerkendte uddannelsesinstitutioner. Dette pædagogiske supplement til lærebogen kan findes på pearson.com , i Instructor Resource Center.

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

    'Hello World: Being Human in the Age of Algorithms' af Hannah Fry er en ret interessant bog, der ser på algoritmer fra et lidt andet perspektiv. Forfatteren beskriver sande beføjelser og begrænsninger af de algoritmer, der allerede automatiserer vigtige beslutninger inden for sundhedspleje, transport, kriminalitet og handel.

Online kurser i algoritmer

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

    Et ret fantastisk helt gratis kursus fra Princeton. Den dækker den væsentlige information, som enhver seriøs programmør har brug for at vide om algoritmer og datastrukturer, med vægt på applikationer og videnskabelige præstationsanalyser af Java-implementeringer. Del I dækker elementære datastrukturer, sorterings- og søgealgoritmer. Del II fokuserer på graf- og strengbehandlingsalgoritmer. Kurset giver ikke certifikat ved afslutning.

  2. Data Structures and Algorithms Specialization Program af UC San Diego via Coursera.

    Endnu et velrenommeret kursusprogram om algoritmer og datastrukturer, der tilbydes af University of California, San Diego og National Research Institute Higher School of Economics. Denne specialisering er en blanding af teori og praksis: du vil lære algoritmiske teknikker til at løse forskellige beregningsmæssige problemer og vil implementere omkring 100 algoritmiske kodningsproblemer i et programmeringssprog efter eget valg.

    “Intet andet online kursus i Algoritmer er endda tæt på at tilbyde dig et væld af programmeringsudfordringer, som du kan komme til at stå over for ved din næste jobsamtale. For at forberede dig har vi investeret over 3000 timer i at designe vores udfordringer som et alternativ til multiple choice-spørgsmål, som du normalt finder i MOOC'er. Beklager, vi tror ikke på multiple choice-spørgsmål, når det kommer til at lære algoritmer ... eller noget andet inden for datalogi! For hver algoritme, du udvikler og implementerer, har vi designet flere tests for at kontrollere dens korrekthed og køretid - du bliver nødt til at fejlsøge dine programmer uden overhovedet at vide, hvad disse test er! Det lyder måske svært, men vi tror på, at det er den eneste måde at virkelig forstå, hvordan algoritmerne fungerer, og at mestre kunsten at programmere,” sagde forfatterne til kurset.

  3. Algorithms Specialization ved Stanford University via Coursera.

    Og det tredje velkendte gratis algoritmekursus fra en velrenommeret uni, Stanford University denne gang. Dette kursus er en introduktion til algoritmer for elever med mindst en smule programmeringserfaring. Eleverne vil øve og mestre det grundlæggende i algoritmer gennem flere typer vurderinger. Hver uge er der en multiple choice-quiz for at teste din forståelse af de vigtigste begreber. Der er også ugentlige programmeringsopgaver, hvor du implementerer en af ​​de algoritmer, der er gennemgået i forelæsningen, i et programmeringssprog efter eget valg. Hvert kursus afsluttes med en multiple-choice afsluttende eksamen.

YouTube-kanaler og afspilningslister

  1. Algoritmer af Abdul Bari.

    En liste over korte foredrag om algoritmer af Abdul Bari, en ret populær YouTuber, der forklarer komplekse emner på de mest enkle og letforståelige måder for sine seere.

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

    'Programmering med Mosh' er en populær mainstream YouTube-kanal til programmeringsbegyndere. Den har masser og masser af tutorials om Java og andre programmeringssprog, de er velstrukturerede og godt præsenteret, inklusive tutorial om datastrukturer og algoritmer. En god måde at sætte sig ind i disse fag, hvis du ikke har lyst til at læse bøger og betale for kurser.

  3. MIT 6.006 Introduction to Algorithms, efterår 2011 af MIT OpenCourseWare

    MIT OpenCourseWare er en kanal fra Massachusetts Institute of Technology, og den har masser af fantastiske gratis videokurser, inklusive den om algoritmer. Hele forløbet består af 47 cirka en times sessioner.

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