CodeGym /Blog Java /Aleatoriu /Abilități de codificare LevelUp, Partea 2. Unde să învăța...
John Squirrels
Nivel
San Francisco

Abilități de codificare LevelUp, Partea 2. Unde să învățați despre algoritmi

Publicat în grup
Continuăm seria noastră de articole despre subiecte suplimentare legate de programare care nu fac parte din cursul CodeGym, cu link-uri și recomandări despre unde le puteți învăța. Astăzi vom vorbi despre algoritmi. Abilități de codificare LevelUp, Partea 2. Unde să învățați despre algoritmi - 1

Ce sunt algoritmii

Un algoritm în sine nu este altceva decât o chitanță pas cu pas pentru rezolvarea unei probleme. Majoritatea algoritmilor folosiți în programare în aceste zile au fost deja descoperiți, testați și dovediți. Algoritmii în Java sunt metode statice care sunt utilizate pentru a efectua diverse operații asupra colecțiilor. Dacă structurile de date sunt folosite de programatorii Java pentru a stoca și organiza datele, algoritmii sunt folosiți pentru a manipula datele din acele structuri. Deci, aceste două subiecte sunt legate unul de celălalt, iar înțelegerea modului în care funcționează împreună este destul de importantă și poate face codarea Java mult mai eficientă. Algoritmii pot fi aplicați oricărui limbaj de programare și, în mod normal, se așteaptă ca programatorii puternici cu experiență să cunoască cel puțin elementele de bază ale acestui subiect, precum și să știe cum să convertească algoritmii în cod în limbajul de programare pe care îl folosesc.

Cărți despre algoritmi

  1. Structuri de date și algoritmi simplificați de Narasimha Karumanchi.

    Unul dintre cele mai bune manuale pentru începători în algoritmi (și structuri de date). „Data Structures And Algorithms Made Easy: Data Structures and Algorithmic Puzzles” este o carte care oferă soluții pentru structurile complexe de date și algoritmi. Există mai multe soluții pentru fiecare problemă, iar cartea este codificată în C/C++. Puteți folosi acesta ca ghid pentru a vă pregăti pentru interviuri, examene și munca în campus.

  2. Algoritmi Grokking de Aditya Bhargava.

    „Algoritmi Grokking” este un alt ușor de înțeles, complet ilustrat și scris într-un ghid de ton prietenos, care vă învață cum să aplicați algoritmi obișnuiți la problemele practice cu care vă confruntați în fiecare zi ca programator. Veți începe cu sortarea și căutarea și, pe măsură ce vă dezvoltați abilitățile de gândire algoritmică, veți aborda probleme mai complexe, cum ar fi compresia datelor și inteligența artificială. Fiecare exemplu include diagrame și exemple de cod complet adnotate în Python.

  3. Algoritmi deblocați de Thomas Cormen.

    O carte despre bazele algoritmilor pentru începători și profesioniști în codificare care doresc să-și extindă cunoștințele despre subiect, de data aceasta scrisă ca manual de facultate pentru studenții MIT.

    „Cititorii vor afla ce sunt algoritmii de computer, cum să-i descrie și cum să-i evalueze. Ei vor descoperi modalități simple de a căuta informații într-un computer; metode de rearanjare a informațiilor dintr-un computer într-o ordine prescrisă („sortare”); cum se rezolvă probleme de bază care pot fi modelate într-un computer cu o structură matematică numită „graf” (utilă pentru modelarea rețelelor de drumuri, a dependențelor între sarcini și a relațiilor financiare); cum să rezolvi problemele care pun întrebări despre șiruri de caractere, cum ar fi structurile ADN; principiile de bază din spatele criptografiei; elementele fundamentale ale compresiei datelor; și chiar că există unele probleme pe care nimeni nu și-a dat seama cum să le rezolve pe un computer într-un timp rezonabil”, spune autorul cărții.

  4. Structuri de date și algoritmi în Java de Robert Lafore.

    Și iată un manual care se concentrează în mod special pe Java. Pe lângă exemple de programe clare și simple, Robert Lafore a adăugat cărții un atelier ca un mic program demonstrativ executabil pe un browser web. Programele demonstrează în formă grafică cum arată structurile de date și cum funcționează.

    Soluțiile sugerate pentru proiectele de programare găsite la sfârșitul fiecărui capitol sunt puse la dispoziția instructorilor din instituțiile de învățământ recunoscute. Acest supliment educațional la manual poate fi găsit la pearson.com , în Centrul de resurse pentru instructori.

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

    „Hello World: Being Human in the Age of Algorithms” de Hannah Fry este o carte destul de interesantă care privește algoritmii dintr-o perspectivă ușor diferită. Autorul descrie adevăratele puteri și limitări ale algoritmilor care automatizează deja decizii importante în domeniul sănătății, transportului, criminalității și comerțului.

Cursuri online despre algoritmi

  1. Algoritmi, partea I , partea a II-a de la Universitatea Princeton prin Coursera.

    Un curs destul de grozav, complet gratuit de la Princeton. Acesta acoperă informațiile esențiale pe care orice programator serios trebuie să le cunoască despre algoritmi și structurile de date, cu accent pe aplicații și analiza performanței științifice a implementărilor Java. Partea I acoperă structurile elementare de date, algoritmii de sortare și căutare. Partea a II-a se concentrează pe algoritmii de procesare a graficelor și șirurilor. Cursul nu oferă un certificat la finalizare.

  2. Programul de specializare în structuri de date și algoritmi de la UC San Diego prin Coursera.

    Un alt program de curs reputat despre algoritmi și structuri de date oferit de Universitatea din California, San Diego și de Institutul Național de Cercetare Higher School of Economics. Această specializare este un amestec de teorie și practică: vei învăța tehnici algoritmice pentru rezolvarea diferitelor probleme de calcul și vei implementa aproximativ 100 de probleme de codare algoritmică într-un limbaj de programare la alegerea ta.

    „Niciun alt curs online de algoritmi nu se apropie de a vă oferi o multitudine de provocări de programare cu care vă puteți confrunta la următorul interviu de angajare. Pentru a vă pregăti, am investit peste 3000 de ore în proiectarea provocărilor noastre ca o alternativă la întrebările cu răspunsuri multiple pe care le găsiți de obicei în MOOC. Ne pare rău, nu credem în întrebări cu răspunsuri multiple atunci când vine vorba de algoritmi de învățare... sau orice altceva în informatică! Pentru fiecare algoritm pe care îl dezvoltați și implementați, am proiectat mai multe teste pentru a-i verifica corectitudinea și timpul de rulare - va trebui să vă depanați programele fără să știți măcar care sunt aceste teste! Poate suna dificil, dar credem că este singura modalitate de a înțelege cu adevărat cum funcționează algoritmii și de a stăpâni arta programării”, au spus autorii cursului.

  3. Specializare în algoritmi de la Universitatea Stanford prin Coursera.

    Și al treilea curs de algoritmi gratuit bine-recunoscut de la o universitate de renume, Universitatea Stanford de data aceasta. Acest curs este o introducere în algoritmi pentru cursanții cu cel puțin puțină experiență în programare. Cursanții vor practica și stăpâni elementele fundamentale ale algoritmilor prin mai multe tipuri de evaluări. În fiecare săptămână, există un test cu variante multiple pentru a vă testa înțelegerea celor mai importante concepte. Există, de asemenea, sarcini de programare săptămânale, în care implementați unul dintre algoritmii tratați în prelegere într-un limbaj de programare pe care îl alegeți. Fiecare curs se încheie cu un examen final cu variante multiple.

Canale YouTube și liste de redare

  1. Algoritmi de Abdul Bari.

    O listă de prelegeri scurte despre algoritmi de către Abdul Bari, un YouTuber destul de popular, care explică subiecte complexe în cele mai simple și ușor de înțeles moduri spectatorilor săi.

  2. Structuri de date și algoritmi în Java privind programarea cu canalul Mosh.

    „Programare cu Mosh” este un canal popular popular pe YouTube pentru începătorii de programare. Are o mulțime de tutoriale despre Java și alte limbaje de programare, sunt bine structurate și bine prezentate, inclusiv tutorialul despre structurile de date și algoritmi. O modalitate bună de a vă familiariza cu aceste subiecte dacă nu aveți chef să citiți cărți și să plătiți pentru cursuri.

  3. MIT 6.006 Introducere în algoritmi, toamna 2011 de către MIT OpenCourseWare

    MIT OpenCourseWare este un canal al Institutului de Tehnologie din Massachusetts și are o mulțime de cursuri video gratuite excelente, inclusiv cel despre algoritmi. Întregul curs constă din 47 de sesiuni de aproximativ o oră.

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