Care este cel mai bun mod de a înțelege algoritmii?


Cel mai bun răspuns

Cel mai bun mod în opinia mea de a înțelege algoritmii este să disecă câte un algoritm la un moment dat.

Scopul aici este de a rezolva o problemă mai mare, împărțind-o în probleme mai mici, mai ușor de gestionat. Cu cât înțelegeți mai mulți algoritmi disecându-i, cu atât veți deveni mai bine.

Iată definiția aproximativă a unui algoritm :

Un algoritm este un set din instrucțiuni concepute pentru a efectua o sarcină specifică.

Există literalmente mii de algoritmi în multe domenii precum matematică computațională care abordează atât subiectele de matematică și informatică, astronomie, bioinformatică, geoștiință, lingvistică, medicină, fizică, statistici și multe altele !!

Iată câțiva algoritmi extrem de utili până în prezent:

  1. Algoritm de sortare prin inserție
  2. Algoritm de sortare de selecție
  3. Algoritm de sortare cu bule
  4. Algoritm de sortare de îmbinare
  5. Quicksort algoritm
  6. Algoritm de căutare binară
  7. Algoritm Breadth First Search (BFS)
  8. Depth First Search (DFS) alg oritm
  9. Cea mai lungă secvență în creștere
  10. Algoritmul Bellman-Ford
  11. Algoritmi Inorder, Preorder, Postorder Tree Transversals
  12. Algoritm Sortare Heap
  13. Algoritmul lui Kruskal pentru găsirea arborelui minim de întindere
  14. Algoritmul lui Dijkstra
  15. Algoritmul primului
  16. Algoritmul Floyd – Warshall
  17. Algoritmul lui Johnson
  18. Algoritmul Hopcroft – Karp
  19. Algoritmul Edmonds – Karp
  20. Algoritmul Ford – Fulkerson
  21. Algoritmul lui Karger
  22. Algoritmul euclidian cu cea mai scurtă cale
  23. Algoritmul de ștergere inversă
  24. Un * algoritm de căutare
  25. Algoritm de urmărire înapoi
  26. Căutare cu fascicul algoritm
  27. algoritm D *
  28. algoritm de căutare cu forță brută
  29. algoritm SSS *
  30. algoritm F *
  31. Aprofundarea iterativă Algoritmul de căutare a adâncimii întâi
  32. Algoritmul Bron – Kerbosch
  33. Algoritmul maximei maxime a clicii maxCliqueDyn
  34. Algoritmul componentelor puternic conectate de Tarjan
  35. Kosaraju Algoritmul lui
  36. Hamming algoritm de calculare a distanței
  37. Algoritm de calculare a memoriei distribuite rare, care a reprezentat o descoperire pentru rezolvarea problemei KNN sau Post-Office, care a fost o problemă de optimizare a căutării celui mai apropiat vecin.

Pot merge dar, ai înțeles. Toate acestea pot părea puțin intimidante, dar dacă alegeți unul la început și alegeți să dedicați timp înțelegerii acestuia. împărțind un algoritm la alegerea dvs. în secțiuni mai mici pentru înțelegere, atunci vă oferă o motivație cu o putere pe care și voi o puteți rezolva o problemă pe care algoritmul o rezolvă. Ai minte plină de bucurie a inteligenței. Și te întrebi ce problemă din viața reală poți rezolva aplicând ceea ce ai învățat. Bănuiesc că mă abat.

Ei bine, pentru a înțelege mai bine unele dintre ele, trebuie să te pregătești să gândești ca și cum ai fi cel care face sarcinile.

Dacă viitorul domeniului informaticii este o bucată de pânză țesută la infinit, având numeroase culori și alte caracteristici precum decorațiuni și mărgele și ce nu, atunci algoritmi sunt firele care leagă totul împreună.

Iată un citat din Donald Knuth,

Ceva frumos magic se întâmplă atunci când o succesiune de comenzi și decizii este capabilă să organizeze o colecție de date în modele sau pentru a descoperi structura ascunsă.

Ați încercat vreodată să urmați o rețetă? Dacă ați înțeles, ați înțeles algoritmi, acum este timpul să faceți computerul să le înțeleagă și pe ei!

Majoritatea problemelor din domeniul informaticii sunt probleme matematice. Deci, trebuie să înțelegeți rezolvarea problemelor matematice, dacă doriți să inovați în lumea informaticii.

Există câteva proprietăți ale fiecărui algoritm cu care vă veți confrunta, acestea sunt următoarele:

  1. Finiteness: Un algoritm POATE fi nelimitat, dar pașii trebuie să se încheie, adică numărul de pași dintr-un algoritm este întotdeauna finit.
  2. Definiteness: Definititatea înseamnă „Fiecare pas trebuie să fie corect și exact definite ”.
  3. Intrări sau intrări: Acesta este destul de explicativ. Chiar dacă un algoritm nu ia nicio intrare, îl putem spune 0 intrare.
  4. Ieșire sau ieșiri: la fel ca numărul de intrări, cu excepția unui algoritm trebuie să aibă cel puțin o ieșire.
  5. Eficacitate: Operațiile implicate într-un algoritm trebuie să fie măsurabile pentru a compara eficacitatea sau eficiența algoritmilor comparați. În general, cantitatea de timp și spațiu pe care o ocupă un algoritm reprezintă o măsură corectă a eficienței algoritmului respectiv.

Dacă aveți orice altă întrebare, lăsați un mesaj!

Până data viitoare! Rămâi în siguranță, ai grijă!

✍Ezaz Akhtar!

Răspunde

învață mai întâi un limbaj de programare

Aș prefera Python ca bun starter. Este ușor de codat și multe metode de construcție sunt incluse. utilizați python și începeți să rezolvați puzzle-uri, cum ar fi puzzle-uri de pe site-ul Hckerrank.

Utilizarea algoritmului este cel mai simplu mod de a le înțelege.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *