10 concepte matematice pentru programatori - KDnuggets

10 concepte matematice pentru programatori – KDnuggets

Nodul sursă: 2874651

10 concepte matematice pentru programatori
Imagine de autor
 

Pe măsură ce cererea de programatori crește, oferta se va întâlni în mod natural cu mai mulți oameni care intră în industrie în fiecare zi. Cu toate acestea, este o industrie competitivă. Pentru a vă îmbunătăți continuu, pentru a vă consolida abilitățile și pentru a vă crește salariul - trebuie să dovediți că sunteți un programator competent. O modalitate prin care poți face acest lucru este să înveți lucruri pe care oamenii nu le știu de obicei. 

Mulți oameni pătrund în industria de programare presupunând că nu trebuie să cunoașteți matematica din spatele ei. Deși acest lucru este oarecum adevărat, capacitatea de a înțelege conceptul logic matematic din spatele programării te va face un programator mai competent. 

Ce zici de asta? Înțelegând ceea ce faci și ce se întâmplă. Așa.

Așa că haideți să intrăm direct în ea. Care sunt primele 10 concepte matematice pentru programatori?

Algebra booleană provine din algebră. Bănuiesc că era evident. Dacă ești programator sau în căutarea ta de a deveni unul, probabil că știi deja ce este Boolean. Dacă nu, o voi defini rapid. 

Boolean este un tip de date/variabilă binară care are una dintre cele două valori posibile, de exemplu 0 (fals) sau 1 (adevărat). Tipul de date boolean este susținut de algebră booleană, în care valorile variabilei sunt cunoscute ca valori de adevăr, adevărate și false. Când lucrați cu algebra booleană, există trei operatori pe care îi puteți utiliza: 

  • Operație de conjuncție sau AND
  • Disjuncție sau operație SAU
  • Operațiune de negație sau nu

Acestea pot fi reprezentate vizual ca diagrame Venn, pentru a vă oferi o mai bună înțelegere a rezultatului. Algebra booleană este alcătuită din 6 legi:

  • Drept comutativ
  • Drept asociativ
  • Dreptul distributiv
  • SI legea
  • SAU legea
  • Legea inversiunii

Calculatoarele înțeleg numerele și de aceea au nevoie de un sistem numeric. Un sistem numeric este cunoscut ca un sistem de scriere folosit pentru a exprima numere. De exemplu, aveți aceste patru tipuri cele mai comune de sisteme de numere:

  1. Sistem de numere zecimale (Baza 10)
  2. Sistem de numere binar (Baza-2)
  3. Sistem de numere octale (Baza-8)
  4. Sistem de numere hexazecimale (Base-16)

Calculatoarele funcționează pe un sistem numeric de bază 2, unde cifrele posibile sunt 0 și 1. Base64 este, de asemenea, utilizat pentru a codifica datele binare într-un format șir.

Mai multe despre a afla despre numere, avem virgulă mobilă. O virgulă mobilă este un tip de date variabil care reprezintă numere reale ca o aproximare. Un număr în virgulă mobilă este un număr în care poziția virgulei zecimale se poate deplasa sau „pluti” în loc să fie într-o poziție fixă. Acest lucru le permite dezvoltatorilor să facă un compromis între gamă și precizie.

Dar de ce o aproximare? Calculatoarele au doar o cantitate limitată de spațiu, fie de 32 de biți (precizie simplă), fie de 64 de biți (precizie dublă). 64 de biți este implicit pentru limbaje de programare precum Python și JavaScript. Un exemplu de numere în virgulă mobilă sunt 1.29, 87.565 și 9038724.2. Poate fi fie un număr întreg pozitiv, fie negativ, cu un punct zecimal. 

Cunoscut și sub numele de log este un concept matematic care folosește inversul exponențialelor pentru a răspunde la întrebare. Deci, de ce este logaritmul important pentru programatori> Pentru că simplifică calculele matematice complexe. De exemplu, 1000 = 10^4 poate fi scris și ca 4 = log101000.

Numărul de bază este un obiect matematic care trebuie înmulțit cu el însuși. Exponentul este un număr care identifică de câte ori trebuie înmulțit un număr de bază cu el însuși. Prin urmare, un logaritm este un exponent care indică la ce putere trebuie ridicată o bază pentru a produce un anumit număr.

Când log folosește baza 2, este un logaritm binar, iar dacă este baza 10 este un logaritm comun. 

Un set este o colecție unică neordonată de valori, care nu trebuie să aibă nicio relație între ele. Ele pot conține doar articole unice și nu pot conține același articol de două ori sau mai multe.

De exemplu, fișierele Excel sau o bază de date conțin tabele care au un set de rânduri unice. Acesta este un tip de matematică discretă, deoarece aceste structuri pot avea un număr finit de elemente. Scopul teoriei mulțimilor este de a înțelege colecțiile de valori și relațiile dintre ele. Acesta este de obicei folosit pentru analiștii de date, experții SQL și oamenii de știință de date. 

Puteți face acest lucru folosind:

  • Inner join or intersection – Returnează un set care conține elemente care sunt prezente în ambele seturi
  • Unire sau unire exterioară – Returnează elemente din ambele seturi
  • Unire toate – La fel ca operatorul de îmbinare extern, dar va conține toate duplicatele.
  • Cu excepția sau Minus – A Minus B este o mulțime care conține elemente din mulțimea A care nu sunt elemente ale mulțimii B 

Combinatoria este arta de a număra lucrurile pentru a obține rezultate și a înțelege anumite proprietăți ale structurilor finite prin modele. Programarea se referă la rezolvarea problemelor, iar combinatoria este modul în care putem aranja obiecte pentru a studia aceste structuri discrete finite.

Formula combinatorică este o combinație de permutare și combinație.

  • Permutarea este actul de a aranja un set într-o anumită ordine sau secvență
  • Combinația este selectarea valorilor setului în care ordinea nu este luată în considerare.

După cum știți deja, un grafic este o reprezentare vizuală a unui set de valori și aceste valori pot fi conectate. Când vine vorba de date, aceste valori sunt conectate datorită variabilelor – care în teoria graficelor sunt cunoscute sub numele de legături. 

Teoria graficelor este studiul graficelor referitoare la relația dintre muchiile și vârfurile mulțimilor de puncte conectate. Acest lucru ne permite să creăm o relație de perechi între obiecte folosind vârfurile, cunoscute și sub numele de noduri care sunt conectate prin margini, cunoscute sub numele de linii. Un grafic este reprezentat ca o pereche G(V, E), unde V reprezintă vârfurile setului finit și E reprezintă muchiile setului finit.

Teoria complexității este studiul cantității de timp și memorie necesare pentru ca un algoritm să ruleze în funcție de dimensiunea intrării. Există două tipuri de complexități:

  • Complexitatea spațiului – cantitatea de memorie necesară pentru a rula un algoritm.
  • Complexitatea timpului – cantitatea de timp necesară pentru a rula un algoritm.

Mai mulți oameni sunt preocupați de complexitatea timpului, deoarece putem reutiliza memoria unui algoritm. Când vine vorba de complexitatea timpului, cel mai bun mod de a-l măsura este luând în considerare numărul de operații pe care le efectuează algoritmul. Algoritmii sunt construiți folosind instrucțiuni și bucle if, prin urmare, pentru a reduce timpul petrecut, doriți să utilizați cod care are cât mai puține instrucțiuni și bucle if.

Teoria complexității pentru algoritmi folosește notația big-o pentru a ajuta la descrierea și pentru a oferi o mai bună înțelegere a comportamentului limitativ al unui algoritm. Este folosit pentru a clasifica algoritmii în funcție de modul în care aceștia răspund la schimbările în dimensiunea intrării.

Ahhh statistici. Dacă vrei să intri în inteligența artificială, trebuie să știi despre statistici. AI și învățarea automată sunt nume frumoase folosite pentru statistici. Programarea statistică este utilizată pentru a rezolva probleme grele de date, cum ar fi ChatGPT. Răspunsul ChatGPT se bazează pe probabilitatea de a se potrivi cu promptul oferit de utilizator. 

Va trebui să înveți mai mult decât medie, mediană și mod atunci când vine vorba de programare statistică. Va trebui să înveți despre părtinire, covarianță și teorema Bayes. În calitate de programator, vi se va stabili sarcini și vă veți da seama că vă veți întreba dacă aceasta este o problemă de regresie liniară sau o problemă de regresie logistică. Înțelegerea diferenței dintre cele două vă va ajuta să identificați ce tip de sarcină aveți la îndemână. 

Poate că te-ai uitat la algebra liniară la școală – sau poate că nu. Algebra liniară este foarte importantă și este utilizată pe scară largă în grafica computerizată și învățarea profundă. Pentru a înțelege algebra liniară, va trebui să înțelegeți aceste trei cuvinte:

  • Scalar – o singură valoare numerică
  • Vector – o listă de numere sau o matrice unidimensională
  • Matrix – o grilă sau o matrice bidimensională

Vectorii pot reprezenta puncte și direcția într-un spațiu 3D, în timp ce matricele pot reprezenta transformări care au loc acestor vectori. 

Acest articol vă oferă o privire de ansamblu rapidă a primelor 10 concepte matematice care vă vor îmbunătăți cariera de programator. Învățarea complexităților nu numai că vă va face sarcinile de zi cu zi mai ușoare și mai ușor de înțeles, dar poate fi prezentat angajatorului dumneavoastră asupra potențialului dumneavoastră. 

Dacă sunteți în căutarea unei cărți GRATUITE care să vă ajute, consultați: Matematică pentru învățarea automată: cartea electronică gratuită
 
 
Nisha Arya este Data Scientist, scriitor tehnic independent și Community Manager la KDnuggets. Este deosebit de interesată să ofere sfaturi în carieră în domeniul științei datelor sau tutoriale și cunoștințe bazate pe teorie în jurul științei datelor. De asemenea, dorește să exploreze diferitele moduri în care Inteligența Artificială este/poate aduce beneficii longevității vieții umane. O învățătoare dornică, care încearcă să-și extindă cunoștințele tehnice și abilitățile de scriere, ajutând în același timp să-i ghideze pe alții.
 

Timestamp-ul:

Mai mult de la KDnuggets