10 matemaatikakontseptsiooni programmeerijatele – KDnuggets

10 matemaatikakontseptsiooni programmeerijatele – KDnuggets

Allikasõlm: 2874651

10 matemaatikakontseptsiooni programmeerijatele
Pilt autorilt
 

Kuna nõudlus programmeerijate järele kasvab, kohtub pakkumine loomulikult üha rohkemate inimestega, kes sisenevad tööstusesse iga päev. Tegemist on siiski konkurentsivõimelise majandusharuga. Selleks, et end pidevalt täiendada, oskusi täiendada ja palka tõsta – pead tõestama, et oled vilunud programmeerija. Üks võimalus seda teha on õppida asju, mida inimesed tavaliselt ei tea. 

Paljud inimesed tungivad programmeerimistööstusse eeldusega, et te ei pea teadma selle taga olevat matemaatikat. Kuigi see on mõnevõrra tõsi, muudab programmeerimise taga oleva loogilise matemaatilise kontseptsiooni mõistmine teid vilunumaks programmeerijaks. 

Kuidas see on? Mõistes, mida teed ja mis toimub. Niimoodi.

Nii et hüppame otse sellesse. Millised on programmeerijate 10 parimat matemaatikakontseptsiooni?

Boole'i ​​algebra tuleneb algebrast. See oli vist ilmselge. Kui olete programmeerija või soovite selleks saada, teate tõenäoliselt juba, mis on Boolean. Kui ei, siis ma defineerin selle kiiresti. 

Boolean on andmetüüp/binaarmuutuja, millel on üks kahest võimalikust väärtusest, näiteks 0 (väär) või 1 (tõene). Tõeväärtuse andmetüüpi toetab Boolean algebra, milles muutuja väärtusi nimetatakse tõeväärtusteks, tõeseks ja vääraks. Boolean algebraga töötamisel saate kasutada kolme operaatorit: 

  • Sidesõna ehk JA-tehte
  • Disjunktsioon ehk VÕI operatsioon
  • Tehe eitus või mitte

Neid saab visuaalselt kujutada venn-diagrammidena, et saaksite väljundist paremini aru. Boole'i ​​algebra koosneb kuuest seadusest:

  • Kommutatiivne seadus
  • Assotsiatiivne seadus
  • Jaotusseadus
  • JA seadus
  • VÕI seadus
  • Inversiooniseadus

Arvutid mõistavad numbreid ja seepärast vajavad nad numbrisüsteemi. Numbrisüsteemi nimetatakse kirjutamissüsteemiks, mida kasutatakse arvude väljendamiseks. Näiteks on teil neli kõige levinumat numbrisüsteemi tüüpi:

  1. Kümnendarvude süsteem (alus-10)
  2. Kahendarvusüsteem (Base-2)
  3. Kaheksandikarvude süsteem (baas-8)
  4. Kuueteistkümnendsüsteemi arvusüsteem (alus-16)

Arvutid töötavad Base-2 numbrisüsteemil, kus võimalikud numbrid on 0 ja 1. Base64 kasutatakse ka binaarandmete kodeerimiseks stringivormingus.

Lisateavet numbrite tundmaõppimise kohta on meil ujukoma. Ujukoma on muutuv andmetüüp, mis esitab reaalarve ligikaudse väärtusena. Ujukomaarv on arv, milles koma asukoht võib kindlas asendis viibimise asemel ringi liikuda või "ujukoma". See võimaldab arendajatel teha kompromissi ulatuse ja täpsuse vahel.

Aga miks ligikaudne? Arvutitel on ainult piiratud hulk ruumi, kas 32 bitti (ühekordne täpsus) või 64 bitti (topelttäpsus). 64-bitine on programmeerimiskeelte (nt Python ja JavaScript) vaikeväärtus. Ujukomaarvude näited on 1.29, 87.565 ja 9038724.2. See võib olla kas positiivne või negatiivne täisarv koos komaga. 

Tuntud ka kui log, on matemaatiline kontseptsioon, mis kasutab küsimusele vastamiseks eksponentsiaalide pöördväärtust. Miks on logaritmid programmeerijatele olulised> Sest see lihtsustab keerulisi matemaatilisi arvutusi. Näiteks 1000 = 10^4 saab kirjutada ka kujul 4 = log101000.

Alusarv on matemaatiline objekt, mis tuleb endaga korrutada. Eksponent on arv, mis määrab, mitu korda tuleb baasarv endaga korrutada. Seetõttu on logaritm eksponent, mis näitab, millise astmeni tuleb baasi antud arvu saamiseks tõsta.

Kui logi kasutab Base-2, on see binaarne logaritm ja kui see on Base-10, on see tavaline logaritm. 

Kogum on järjestamata ainulaadne väärtuste kogum, millel ei pea olema üksteisega mingit seost. Need võivad sisaldada ainult unikaalseid üksusi ja ei tohi sisaldada sama üksust kaks korda või rohkem.

Näiteks Exceli failid või andmebaas sisaldavad tabeleid, millel on unikaalsete ridade komplekt. See on diskreetse matemaatika tüüp, kuna nendel struktuuridel võib olla piiratud arv elemente. Hulgateooria eesmärk on mõista väärtuste kogumeid ja omavahelisi suhteid. Seda kasutatakse tavaliselt andmeanalüütikute, SQL-i ekspertide ja andmeteadlaste jaoks. 

Seda saate teha kasutades:

  • Sisemine ühendus või ristmik – tagastab komplekti, mis sisaldab mõlemas komplektis esinevaid elemente
  • Väline liitumine või liitmine – tagastab elemendid mõlemast komplektist
  • Liit kõik – sama mis välimise liitumise operaator, kuid see sisaldab kõiki duplikaate.
  • Välja arvatud või miinus – A Miinus B on hulk, mis sisaldab hulga A elemente, mis ei ole hulga B elemendid 

Kombinatoorika on asjade loendamise kunst, et saada tulemusi ja mõista lõplike struktuuride teatud omadusi mustrite kaudu. Programmeerimine on seotud probleemide lahendamisega ja kombinatoorika on viis, kuidas me saame paigutada objekte nende lõplike diskreetsete struktuuride uurimiseks.

Kombinatoorika valem on kombinatsioon permutatsioonist ja kombinatsioonist.

  • Permutatsioon on komplekti mingisse järjestusse või järjestusse paigutamise toiming
  • Kombinatsioon on komplekti väärtuste valik, mille puhul järjekorda ei võeta arvesse.

Nagu te juba teate, on graafik väärtuste kogumi visuaalne esitus ja neid väärtusi saab ühendada. Mis puutub andmetesse, siis need väärtused on seotud muutujate tõttu – mida graafiteoorias nimetatakse linkideks. 

Graafiteooria on graafikute uurimine, mis käsitlevad ühendatud punktihulkade servade ja tippude vahelisi seoseid. See võimaldab meil luua objektide vahel paarisuhe, kasutades tippe, mida nimetatakse ka sõlmedeks, mis on ühendatud servade ehk joontena. Graaf on kujutatud paarina G(V, E), kus V tähistab lõplike hulga tippe ja E on lõplike hulga servi.

Keerukuse teooria uurib aega ja mälu, mis kulub algoritmi töötamiseks, sõltuvalt sisendi suurusest. Keerukust on kahte tüüpi:

  • Ruumi keerukus – mälumaht, mida algoritm töötab.
  • Aja keerukus – aeg, mille jooksul algoritm töötab.

Üha enam inimesi on mures aja keerukuse pärast, kuna saame algoritmi mälu uuesti kasutada. Kui rääkida aja keerukusest, siis parim viis selle mõõtmiseks on algoritmi sooritatavate toimingute arvu arvessevõtmine. Algoritmid on koostatud kasutades if-lauseid ja silmuseid, mistõttu kulutatava aja vähendamiseks soovitakse kasutada koodi, milles on võimalikult vähe if-lauseid ja silmuseid.

Algoritmide keerukuse teooria kasutab suurt tähistust, et aidata kirjeldada ja paremini mõista algoritmi piiravat käitumist. Seda kasutatakse algoritmide klassifitseerimiseks selle järgi, kuidas nad reageerivad sisendi suuruse muutustele.

Ahhh statistika. Kui soovite saada tehisintellekti, peate teadma statistikat. AI ja masinõpe on kenad nimed, mida statistika jaoks kasutatakse. Statistilist programmeerimist kasutatakse andmemahukate probleemide (nt ChatGPT) lahendamiseks. ChatGPT vastus põhineb kasutaja esitatud viipale vastavuse tõenäosusel. 

Statistilise programmeerimise osas peate õppima rohkem kui keskmine, mediaan ja režiim. Peate õppima kallutatuse, kovariatsiooni ja Bayesi teoreemi kohta. Programmeerijana seatakse teile ülesanded ja saate aru, et küsite, kas see on lineaarse regressiooni probleem või logistilise regressiooni probleem. Nende kahe erinevuse mõistmine aitab teil kindlaks teha, mis tüüpi ülesanne teil on. 

Võib-olla olete koolis lineaaralgebrat vaadanud või mitte. Lineaaralgebra on väga oluline ja seda kasutatakse laialdaselt arvutigraafikas ja süvaõppes. Lineaarse algebra mõistmiseks peate mõistma neid kolme sõna:

  • Skalaar – üks arvväärtus
  • Vektor – arvude loend või 1-mõõtmeline massiiv
  • Maatriks – ruudustik või kahemõõtmeline massiiv

Vektorid võivad kujutada punkte ja suunda 3D-ruumis, maatriksid aga nende vektoritega toimuvaid teisendusi. 

See artikkel annab teile kiire ülevaate 10 parimast matemaatikakontseptsioonist, mis parandavad teie programmeerimiskarjääri. Peensuste õppimine ei muuda teie igapäevaseid ülesandeid mitte ainult sujuvamaks ja arusaadavamaks, vaid seda saab ka teie tööandjale näidata. 

Kui otsite TASUTA raamatut, mis teid aitaks, vaadake: Matemaatika masinõppe jaoks: tasuta e-raamat
 
 
Nisha Arya on andmeteadlane, vabakutseline tehniline kirjanik ja kogukonnajuht ettevõttes KDnuggets. Ta on eriti huvitatud andmeteaduse karjäärinõustamise või õpetuste ja teooriapõhiste teadmiste pakkumisest andmeteaduse kohta. Samuti soovib ta uurida erinevaid viise, kuidas tehisintellekt on/võib aidata kaasa inimelu pikaealisusele. Innukas õppija, kes soovib laiendada oma tehnilisi teadmisi ja kirjutamisoskusi, aidates samal ajal teisi juhendada.
 

Ajatempel:

Veel alates KDnuggets