timsort / Elementi (na koje pokazuje plava strelica) se uspoređuju, a manji element se pomiče na svoju konačnu poziciju (na koju pokazuje crvena strelica).
Osnove programiranja

Timsort

Sigurno ste se pitali koji algoritam sortiranja se izvršava kada se pokrene ugrađena sort funkcija? Odgovor nije jednstven za sve implementacije ali jedan od najzastupljenijih je definitivno timsort. Timsort je hibridni, stabilni algoritam, izveden od merge sort i insertion sort algoritama. Razvio ga je Tim Peters 2002. godine za potrebe programskog jezika Python. Danas je […]

Pročitaj ostatak
algoritmi
Osnove programiranja

Algoritmi sortiranja

Algoritmi sortiranja prestavljaju algoritme čiji je cilj da postave elemente kolekcije u ispravan redosled. Najčešće se redosled utvrđuje operatorom poređenja koji se definiše za elemente. Kod brojnih vrednosti to može biti operator < ili >, tekstualne tipove možemo sortirati leksikografski (u abedecnom redosledu) ili po dužini podatka… Sortiranje se primenjuje kako bi podaci bili pregledniji, […]

Pročitaj ostatak
objektno-orijentisano programiranje
Osnove programiranja

Zašto je objektno-orijentisano programiranje (OOP) temelj modernog softverskog razvoja?

U svetu tehnologije i programiranja, objektno-orijentisano programiranje (OOP) je osnova na kojoj počiva moderni dizajn i razvoj softvera. OOP pristup stavlja pažnju na objekte umesto na funkcije i daje mogućnosti za kreiranje fleksibilnog, efikasnog i lako održivog koda. U nastavku su četiri osnovne karakteristike OOP: Modularnost i nasleđivanje Objektno-orijentisani programi karakteriše visok stepen modularnosti, što […]

Pročitaj ostatak
java-programiranje
Osnove programiranja

Pisanje “čistog” koda

Šta je to “čist” kod? Čist kod (clean code) predstavlja programski kod koji se lako čita, razume i menja. Potreba za pisanjem čistog koda postaje veoma izražena kako softverski sistemi rastu i postaju kompleksniji, te se javlja potreba za održavanjem. Visoko kvalitetan i čist kod znatno olakšava održavanje softverskih sistema. Čist kod: se lako održava […]

Pročitaj ostatak
strukture podataka
Osnove programiranja

Razlozi za učenje struktura podataka i algoritama

Razumevanje struktura podataka i algoritama (Engl. Data structures and algorithms, DSA) je ključno za bilo kog studenta ili profesionalca iz oblasti računarstva. Evo glavnih razloga za učenje algoritama i struktura podataka: Efikasnost u rešavanju problema Učenjem različitih struktura podataka možete skladištiti i organizovati podatke na način koji olakšava operacije poput pretrage, dodavanja, brisanja i prolaska. […]

Pročitaj ostatak