NIZOVI U PROGRAMSKIM JEZICIMA: C,C++,JAVA - PRIMERI
1. Broj negativnih brojeva
2. Srednja vrednost
3. Određivanje maksimuma i minimuma
a) Maksimalnog elementa
b) Minimalnog elementa
4. Broj učenika sa nadprosečnom visinom
5. Meteorološka stanica
a) Učitava niz vrednosti pritisaka
b) Odrećuje maksimalni, minimalni pritisak i redni broj odgovarajućih dana u nizu
c) Odrediti srednju vrednost pritisaka u toku posmatranja
6. Različiti elementi niza
Ulaz
U jednoj liniji standardnog ulaza nalazi se broj elemenata niza N (0<N≤10000), a zatim se, u svakoj od N narednih linija standardnog ulaza, nalazi po jedan član niza.
Izlaz
U svakoj liniji standarnog izlaza ispisuje se po jedan element transformisanog niza.
Primer
Ulaz
10
1
3
5
3
1
5
7
2
3
5
Izlaz
1
3
5
7
2
Cilj zadatka je transformisati dati niz tako da svaki element u njemu ostane jedinstven, zadržavajući redosled prvog pojavljivanja.
Uputstvo za rešavanje:
- Učitati broj elemenata niza
N
i zatim niz odN
brojeva. - Kreirati pomoćnu strukturu, npr. niz ili skup, za praćenje već viđenih brojeva.
- Proći kroz niz i dodati broj u rezultat samo ako nije već viđen.
- Ispisati rezultat, gde svaki broj ide u poseban red.
Rešenja u C i C++ jeziku koriste različite pristupe, ali obe implementacije imaju vremensku složenost O(N)
.
Rešenje u C jeziku:
#include <stdio.h>#include <stdbool.h>
/* Rešenje zadatka u jeziku C */
int main() {
scanf("%d", &N);
int input[N], output[N], outputSize = 0;
bool seen[10001] = {false}; // Proverava da li je broj već viđen
for (int i = 0; i < N; i++) {
if (!seen[input[i]]) {
output[outputSize++] = input[i];
for (int i = 0; i < outputSize; i++) {
return 0;
Rešenje u C++ jeziku:
#include <iostream>#include <vector>
#include <unordered_set>
/* Rešenje zadatka u jeziku C++ */
using namespace std;
int main() {
cin >> N;
vector<int> input(N); // Učitavanje niza
for (int i = 0; i < N; i++) {
vector<int> result; // Transformisani niz
unordered_set<int> seen; // Skup viđenih brojeva
for (int num : input) {
seen.insert(num);
for (int num : result) {
return 0;
7. Autoprevozno preduzeće
niz S[1 ... N] - pređene kilometraže svakog od N autobusa u toku dana i
niz P[1 ... N] - njihova potrošnja goriva
Napisati program koji:
a) Izračunava ukupan pređeni put i ukupnu potrošnju za sva putovanja
b) izračunava srednji pređeni put po autobusu i srednju potrošnju goriva po autobusu
c) određuje indeks autobusa čija je pređena kilometraža maksimalna(minimalna)
d) određuje za svaki autobus pokazatelj ekonomičnosti - potrošnja u litrima na 100 km
8. Izbacivanje elemenata
Potrebno je pronaći sve nepoželjne elemente u nizu i ukloniti ih. Nakon toga se broj elemenata može promeniti i neki drugi elementi mogu postati nepoželjni. Postupak se ponavlja dok se ne dobije niz bez nepoželjnih elemenata.
Napiši program koji za dati niz određuje zbir preostalih elemenata, nakon uklanjanja nepoželjnih.
Sa standardnog ulaza se unosi broj n (1≤n≤50000), a zatim i n
elemenata niza iz raspona od 1 do 100.
Izlaz
Na standardni izlaz ispisati jedan ceo broj koji predstavlja zbir preostalih elemanata u nizu,
nakon uzastopnog uklanjanja svih nepoželjnih elemenata.
Primer
Ulaz
10
1
2
3
4
5
6
7
8
9
10
Izlaz
24
Prvo se uklanjaju elementi 1, 2, 5 i 10 koji dele dužinu 10, zatim se uklanjaju elementi 3 i 6 koji dele dužinu
6 i na kraju se uklanja element 4, tako da ostaju elementi 7, 8 i 9 čiji je zbir 24.
9. Ciklično pomeranje za jedno mesto
U jednoj liniji standardnog ulaza nalazi se broj elemenata niza n (1<n≤200), a zatim se, u svakoj od n narednih linija standardnog ulaza, nalazi po jedan član niza. U narednim redovima se unose po dva cela broja, p i q (0≤p,q<n), odvojena prazninom dok se ne unese red u kome su brojevi jednaki.
Izlaz
U svakoj liniji standarnog izlaza ispisuje se po jedan element transformisanog niza.
Primer
Ulaz
4
1 2 3 4
2 3
2 0
1 2
0 0
Izlaz
2
1
4
3
10. Translacija tačaka
U prvoj liniji standardnog ulaza nalazi se prirodan broj n (1≤n≤100). U sledećih n linija nalaze se po dva realna broja, koji predstavljaju x i y koordinate tačaka.
Izlaz
Na standardnom izlazu prikazati koordinate tačaka posle translacije, za svaku tačku u jednoj liniji njenu x pa y koordinatu, koordinate odvojiti jednom prazninom i prikazati ih na dve decimale.
Primer
Ulaz
3
0 0
1 0
2 3
Izlaz
-1.00 -1.00
0.00 -1.00
1.00 2.00
11. Majstor
Nakon izvođenja radova majstor Peri je vraćeno n kutija sa šrafovima. Kutije su korišćene i mogu sadržati različite brojeve šrafova.
Majstor Pera hoće da koristi dve kutije sa najmanjim brojem šrafova. Pomozite majstor Peri da izračuna koliko ukupno šrafova ima u tako izabrane dve kutije.
Ulaz
U prvoj liniji standardnog ulaza unosi se ukupan broj kutija n ( 2 ≤ n ≤ 30).
Zatim se u narednih n linija unose brojevi šrafova u kutijama k i (1≤k i ≤100), redom.
Izlaz
Na standardni izlaz ispisati ceo broj koji predstavlja zbir šrafova u dve kutije sa najmanje šrafova.
Primer 1
Ulaz
5
45
32
9
15
67
Izlaz
24
Primer2
Ulaz
7
764
455
721
231
138
97
333
Izlaz
235
Primer 3
Ulaz
5
28
14
30
15
14
Izlaz
28
12. Broj dana odmerenog treninga
Prilikom pripreme za predstojeća takmičenja, sportista svakog dana meri rezultat koji je postigao. Pošto želi da ravnomerno podiže formu, želi da svaki dan rezultat bude sve bolji (veći broj predstavlja bolji rezultat). Za neki dan treninga ćemo reći da je dobar, ako je rezultat postignut tog dana strogo bolji nego prethodnog, a strogo lošiji nego narednog (da bi bio dobar, za prvi dan je dovoljno da je strogo lošiji od narednog, a za poslednji dan da je strogo bolji od prethodnog).
Napiši program koji izračunava broj dobrih dana.
Ulaz:
Sa standardnog ulaza se učitava broj dana n(3 ≤ n ≤ 100) tokom kojih je sportista trenirao, a u
drugom redu rezultati koje je sportista postizao tokom svakog od tih n dana.
Izlaz:
Na standardni izlaz ispisati broj dobrih dana.
Primer 1
Ulaz
6
100 120 130 110 140 150
Izlaz
4
Primer 2
Ulaz
6
10 20 30 40 50 60
Izlaz
6
13. Razmena najvećeg sa prvim elementom niza
Primer:
Ulaz:
7
3 5 12 -3 4 2 8
Izlaz
12 5 3 -3 4 2 8
Rešenje u programskom jeziku C
Uneti broj elemenata niza , a zatim uneti sve elemente tog niza
Odrediti indeks maksimalnog element u nizu na sledeci nacin
- Postaviti maksimum da bude vrednost prvog elementa u nizu, a zatim
- Unutar ciklusa, koristeci for petlju proveravati da li je tekući element niza možda veći od trenutnog maksimuma
- Ako jeste postaviti taj element za maksimalni
- Zabeležiti indeks u trenutku menjanja maksimuma
- Po izlasku iz petlje zabeleženi indeks je indeks maksimalnog elementa u datom nizu
Izvšiti zamenu elemenata na prvoj i prethodno određenoj poziciji maksimuma
#include < stdlib.h >
int main()
{
scanf("%d",&n);
int A[n];
for(int i=0; i
//Odrediti max
max=A[0];
for(int i=0; i < n; i++)
{
{
pozMax=i;
//Zamena
int temp=A[0];
A[0]=A[pozMax];
A[pozMax]=temp;
//Ispis posle zamene
for(int i=0; i < n; i++)
{
return 0;
14. Izbacivanje maksimalnih elemenata niza
Primer:
Ulaz:
8
5 15 12 -13 15 2 8 15
Izlaz
5 12 -13 2 8
Rešenje u programskom jeziku C
Uneti broj elemenata niza , a zatim uneti sve elemente tog niza
Odrediti maksimalni element u nizu
- Postaviti uslov unutar for petlje koji ispituje da li je tekuci element niza jednak maksimumu
- Ako jeste prepisati taj element posmatranog niza u novi niz i povecati poziciju novog niza za 1
#include < stdlib.h >
int main()
{
scanf("%d",&n);
for(int i=0; i < n; i++)
{
/*Odredjivanje maksimuma u nizu*/
max=A[0];
for(int i=0; i < n; i++)
{
/*Prepisivanje u novi niz svih elemenata sem onih koji su jednaki maksimumu*/
for(int i=0; i < n; i++)
{
{
printf("%d\n",B[f]);
f++;
return 0;
15. Elementi realnog niza
a) odnos sume elemenata niza, do prvog maksimuma i sume elemenata iza prvog maksimuma
b) proizvod elemenata između maksimalnog i minimalnog elementa
c) aritmetičku sredinu elemenata između poslednjeg maksimalnog i "centralnog". Pretpostavka je da je broj elemenata neparan
16. Zbirovi nakon podele
Potrebno predznanje: Podaci u c++, Operatori u C++, Grananje u programu u C/C++, Petlje , Nizovi u jeziku C/C++
Opciono:Maksimalna suma podniza
Dat je niz celih brojeva dužine n. Niz je potrebno preseći na dva dela. Nakon sečenja određuje se koliko postoji parova brojeva takvih da je jedan broj iz levog, a drugi iz desnog dela i da je njihov zbir paran broj. Odrediti maksimalan broj takvih parova koji je moguće dobiti sečenjem niza.
Ulaz
Sa standardnog ulaza se unosi ceo broj n (2≤n≤50000). Zatim se u narednom redu unose elementi niza a i (0≤ai≤100) razdvojeni razmakom.
Izlaz
Na standardni izlaz ispisati jedan ceo broj koji predstavlja traženu vrednost.
Primer 1
Ulaz
8
1 7 3 4 6 5 8 0
Izlaz
7
Objašnjenje: Najveći broj parova dobija se podelom niza na delove 1 7 3 4 6 i 5 8 0. Parovi su(1,5), (7,5), (3,5), (4,8), (4,0), (6,8) i (6,0).
Primer 2
Ulaz
7
1 9 3 11 12 4 8
Izlaz
4
Višedimenzionalni nizovi-matrice
Višedimenzionalni nizovi su nizovi koji sadrže više od jedne dimenzije, što znači da se mogu koristiti za predstavljanje više dimenzija podataka. Najčešći primer višedimenzionalnih nizova su dvodimenzionalni nizovi, koji se često koriste za predstavljanje tabela, matrica ili gridova. Višedimenzionalni nizovi mogu imati tri, četiri ili više dimenzija, u zavisnosti od složenosti problema koji se rešava.
Namena Višedimenzionalnih Nizova:
- Predstavljanje Tabela i Matriza: Višedimenzionalni nizovi su idealni za rad sa tabelama podataka, kao što su matrice u matematici ili rasporedi u igrama.
- Grafički Prikazi: Koriste se za predstavljanje piksela u slikama, gde svaka dimenzija može predstavljati boje ili slojeve.
- Simulacije i Modeli: Omogućavaju kreiranje kompleksnih modela i simulacija, kao što su 3D grafika ili simulacije u naučnim istraživanjima.
C++ Primer:
#include <iostream> int main() { // Deklaracija i inicijalizacija dvodimenzionalnog niza int matrix[3][3] = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} }; // Ispis elemenata matrice for (int i = 0; i < 3; ++i) { for (int j = 0; j < 3; ++j) { std::cout << matrix[i][j] << " "; } std::cout << std::endl; } return 0; }
C primer
#include <stdio.h> int main() { // Deklaracija i inicijalizacija dvodimenzionalnog niza int matrix[3][3] = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} }; // Ispis elemenata matrice for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { printf("%d ", matrix[i][j]); } printf("\\n"); } return 0; }
Java Primer:
public class MultiDimensionalArrayExample { public static void main(String[] args) { // Deklaracija i inicijalizacija dvodimenzionalnog niza int[][] matrix = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} }; // Ispis elemenata matrice for (int i = 0; i < matrix.length; i++) { for (int j = 0; j < matrix[i].length; j++) { System.out.print(matrix[i][j] + " "); } System.out.println(); } } }
Zaključak
Višedimenzionalni nizovi su moćan alat za rad sa kompleksnijim strukturama podataka. Korišćenjem višedimenzionalnih nizova, možete efikasno organizovati i manipulisati podacima u više dimenzija, što je korisno u različitim aplikacijama od naučnih simulacija do grafičkog prikaza.
Više primera o dvodimenzionim nizovima možete naći na sledećoj strani: Matrice primeri
FAQ Sekcija za Nizove
- Šta je indeksiranje u nizovima i kako funkcioniše?
- Odgovor: Indeksiranje u nizovima omogućava pristup svakom elementu u nizu koristeći indeks. Indeksi u većini programskih jezika, uključujući Java i C++, počinju od 0. To znači da prvi element niza ima indeks 0, drugi element ima indeks 1, i tako dalje. Na primer, u C++ nizu int array[5], array[0] pristupa prvom elementu, dok array[4] pristupa petom elementu.
- Šta se dešava ako pokušam da pristupim indeksu koji je van opsega niza?
- Odgovor: Pristup indeksu van opsega niza može uzrokovati grešku u programu. U C++, ovo može dovesti do nepredvidivih rezultata i grešaka, dok u Javi pristup indeksu van opsega niza (npr. array[10] za niz sa 5 elemenata) izaziva ArrayIndexOutOfBoundsException. Uvek proveravajte da li je indeks u validnom opsegu pre nego što pristupite elementu niza.
- Kako mogu da inicializujem niz sa različitim vrednostima u različitim indeksima?
- Odgovor: Možete inicijalizovati niz tako što ćete direktno dodeliti vrednosti određenim indeksima nakon deklaracije niza. Na primer, u Java: int[] array = new int[5]; array[0] = 1; array[1] = 2;. U C++: int array[5] = {1, 2, 0, 0, 0}; ili možete koristiti petlju za postavljanje vrednosti.
- Šta su uobičajene greške prilikom rada sa nizovima?
- Odgovor: Neke od uobičajenih grešaka uključuju:
- Indeks van opsega: Pokušaj pristupa indeksima koji su manji od 0 ili veći od veličine niza minus 1.
- Nepodesna veličina niza: Niz može biti prekratak za podatke koje želite da sačuvate, što može dovesti do grešaka u programu.
- Zaboravljanje da se inicijalizuje niz: Pristup nizu bez inicijalizacije može dovesti do nepredvidivih rezultata.
- Odgovor: Neke od uobičajenih grešaka uključuju:
- Kako mogu da koristim višedimenzionalne nizove?
- Odgovor: Višedimenzionalni nizovi, kao što su dvodimenzionalni nizovi, koriste se za predstavljanje podataka u više dimenzija. Na primer, dvodimenzionalni niz može biti korišćen za predstavljanje tabele. U Javi: int[][] matrix = {{1, 2}, {3, 4}};. U C++: int matrix[2][2] = {{1, 2}, {3, 4}};. Pristup elementima se vrši koristeći dva indeksa, jedan za red i jedan za kolonu.
- Kako da radim sa dinamičkim nizovima?
- Odgovor: U Javi, dinamički nizovi se obično koriste kroz klase kao što su ArrayList, koje omogućavaju automatsko prilagođavanje veličine. U C++, možete koristiti std::vector za dinamičko dodavanje i uklanjanje elemenata. Na primer, u Javi: ArrayList<Integer> list = new ArrayList<>(); list.add(1);. U C++: std::vector<int> vec; vec.push_back(1);.
- Koje su najbolje prakse za rad sa nizovima?
- Odgovor: Neke od najboljih praksi uključuju:
- Proveravanje granica: Uvek proveravajte da li su indeksi u validnom opsegu pre nego što pristupite elementima niza.
- Korišćenje petlji za rad sa nizovima: Koristite petlje za iteraciju kroz nizove, što čini kod čistijim i lakšim za održavanje.
- Inicijalizacija niza: Uvek inicijalizujte niz pre nego što ga koristite kako biste izbegli nepredvidive rezultate.
- Odgovor: Neke od najboljih praksi uključuju:
Kolekcije u Javi: Osnove i poređenje sa Nizovima
Osnovni Tipovi Kolekcija:
- ArrayList:
- Opis: ArrayList je jedna od najčešće korišćenih kolekcija u Javi. Omogućava dinamičko povećanje i smanjenje veličine u odnosu na nizove.
- Prednosti:
- Fleksibilnost u veličini: ArrayList automatski prilagođava svoju veličinu u zavisnosti od broja elemenata.
- Brz pristup: Omogućava brz pristup elementima preko indeksa (O(1) vreme za pristup).
- Metode za manipulaciju: Pruža razne metode za dodavanje, uklanjanje i pretragu elemenata.
- Nedostaci:
- Zamena elemenata: Operacije umetanja i brisanja elemenata (posebno u sredini) mogu biti sporije zbog pomeranja elemenata (O(n) vreme za umetanje/brisanje).
- Veća memorijska potrošnja: Može koristiti više memorije zbog interne implementacije.
- LinkedList:
- Opis: LinkedList je kolekcija koja koristi povezanih listi za skladištenje elemenata, gde svaki element pokazuje na sledeći i prethodni element.
- Prednosti:
- Brzo umetanje i brisanje: Brzo dodavanje i uklanjanje elemenata sa početka ili kraja liste (O(1) vreme).
- Fleksibilnost: Dobro je pogodna za aplikacije koje često menjaju veličinu kolekcije.
- Nedostaci:
- Sporiji pristup: Pristup elementima preko indeksa može biti sporiji (O(n) vreme za pristup).
- Veća memorijska potrošnja: Svaki element zahteva dodatnu memoriju za povezivanje sa drugim elementima.
- Fleksibilnost:
- Nizovi: Imaju fiksnu veličinu koja se ne može menjati nakon inicijalizacije.
- Kolekcije (npr. ArrayList): Omogućavaju dinamičko menjanje veličine.
- Performanse:
- Nizovi: Omogućavaju brzi pristup elementima i imaju manju memorijsku potrošnju.
- Kolekcije: ArrayList omogućava brz pristup preko indeksa, ali može biti sporije za umetanje i brisanje u sredini. LinkedList je bolja za operacije umetanja i brisanja, ali sporija za pristup elementima.
- Manipulacija Podacima:
- Nizovi: Ograničeni u pogledu manipulacije podacima. Za naprednije operacije, potrebno je pisati dodatni kod.
- Kolekcije: Pružaju bogat set metoda za manipulaciju podacima, uključujući pretragu, sortiranje, i filtriranje.
- Kompatibilnost sa API-jem:
- Nizovi: Nisu direktno kompatibilni sa mnogim bibliotekama i framework-ima koji koriste kolekcije.
- Kolekcije: Većina modernih Java biblioteka i API-ja koristi kolekcije, što ih čini pogodnijim za rad u različitim aplikacijama.
ZaključakKolekcije u Javi nude značajne prednosti u odnosu na tradicionalne nizove, posebno u pogledu fleksibilnosti i funkcionalnosti. ArrayList i LinkedList su dve popularne implementacije koje nude različite prednosti u zavisnosti od specifičnih potreba aplikacije. Odabir između kolekcija i nizova zavisi od specifičnih zahteva vašeg programa i tipičnih operacija koje obavljate.
Primer 1: Korišćenje ArrayList
public class ArrayListExample {
public static void main(String[] args) {
// Kreiranje ArrayList objekta za skladištenje celobrojnih vrednosti
ArrayList<Integer> numbers = new ArrayList<>();
// Dodavanje elemenata u ArrayList
numbers.add(10);
numbers.add(20);
numbers.add(30);
// Ispis elemenata
System.out.println("Brojevi u ArrayList:");
for (int number : numbers) {
System.out.println(number);
}
// Uklanjanje elementa
numbers.remove(Integer.valueOf(20)); // Uklanja prvi nalaz broja 20
// Provera da li ArrayList sadrži određeni element
if (numbers.contains(30)) {
System.out.println("Lista sadrži broj 30.");
}
// Ispis broja elemenata u ArrayList
System.out.println("Ukupan broj elemenata: " + numbers.size());
}
}
Primer 2: Korišćenje LinkedList
public class LinkedListExample {
public static void main(String[] args) {
// Kreiranje LinkedList objekta za skladištenje stringova
LinkedList<String> names = new LinkedList<>();
// Dodavanje elemenata na početak i kraj liste
names.add("Alice");
names.add("Bob");
names.addFirst("Charlie"); // Dodaje "Charlie" na početak liste
names.addLast("David"); // Dodaje "David" na kraj liste
// Ispis elemenata
System.out.println("Imena u LinkedList:");
for (String name : names) {
System.out.println(name);
}
// Uklanjanje elemenata
names.removeFirst(); // Uklanja prvi element ("Charlie")
names.removeLast(); // Uklanja poslednji element ("David")
// Provera da li LinkedList sadrži određeni element
if (names.contains("Alice")) {
System.out.println("Lista sadrži ime Alice.");
}
// Ispis broja elemenata u LinkedList
System.out.println("Ukupan broj elemenata: " + names.size());
}
}
- ArrayList: Koristi se kada je važan brz pristup elementima preko indeksa i kada je manipulacija listom (dodavanje i brisanje) relativno retka ili se dešava na kraju liste.
- LinkedList: Pruža bolje performanse za operacije umetanja i brisanja na početku i kraju liste, dok je pristup elementima preko indeksa sporiji.
Praktični Projekti:
- Opis: Napravite program koji uzima niz dnevnih temperatura za nedelju dana i izračunava prosečnu temperaturu. Program treba da prikaže i dane koji imaju temperaturu iznad proseka.
- Cilj: Vežbanje osnovnih operacija sa nizovima, poput popunjavanja niza, izračunavanja prosečne vrednosti i pretrage unutar niza.
- Opis: Napišite program koji uzima rečenicu od korisnika i obrće redosled reči u toj rečenici. Koristite niz za skladištenje reči pre nego što ih obrnuto prikažete.
- Cilj: Razvijanje veština rada sa stringovima i nizovima, uključujući tokenizaciju stringa i manipulaciju nizom.
- Opis: Kreirajte program koji uzima niz celih brojeva od korisnika i zatim pronalazi i prikazuje najveći i najmanji element u tom nizu.
- Cilj: Vežbanje pretrage unutar niza, kao i korišćenja petlji za iteraciju kroz elemente.
- Opis: Napravite program koji sabira dva matriksa istih dimenzija. Koristite dvodimenzionalne nizove za skladištenje i prikaz rezultata.
- Cilj: Razumevanje rada sa višedimenzionalnim nizovima i osnovnih matematičkih operacija nad njima.
- Opis: Implementirajte program koji broji koliko puta se svaki jedinstveni element pojavljuje u nizu. Rezultat treba da se prikaže u obliku: element - broj ponavljanja.
- Cilj: Vežbanje korišćenja petlji i uslovnih izraza za analizu podataka unutar niza.
- Opis: Napravite program koji skladišti ocene studenata u nizu i izračunava prosečnu ocenu za svakog studenta, kao i prosečnu ocenu za ceo razred.
- Cilj: Primena nizova u realnom svetu, uključujući pristup i manipulaciju podacima u nizu.
- Opis: Implementirajte program koji sortira niz celih brojeva koristeći algoritam po vašem izboru (npr. Bubble sort, Selection sort). Prikažite niz pre i posle sortiranja.
- Cilj: Razumevanje osnovnih algoritama sortiranja i njihova primena na nizove.
Spoljašnji Resursi i Linkovi:
- Oracle Java Documentation - Arrays: Službena Oracle Java dokumentacija pruža detaljan uvod u rad sa nizovima u Javi, uključujući kreiranje, inicijalizaciju i manipulaciju nizovima.
- Effective Java by Joshua Bloch: Knjiga "Effective Java" smatra se jednim od najboljih izvora za napredne programere koji žele da poboljšaju svoje veštine u Javi. Poglavlje o kolekcijama nudi detaljne savete o upotrebi nizova i kolekcija u Javi.
- Java Collections Framework Documentation: Detaljna dokumentacija o Java Collections Framework-u (JCF), koja pokriva različite vrste kolekcija, poput ArrayList, HashMap, HashSet, i njihovih prednosti u odnosu na nizove.
- Baeldung - Java Collections: Tutorijal sa Baeldung-a pruža praktične primere i vodiče kroz različite aspekte Java Collections Framework-a, uključujući rad sa listama, setovima, mapama, i još mnogo toga.
- GeeksforGeeks - Arrays in Java: Sveobuhvatan vodič koji pokriva osnove i napredne koncepte rada sa nizovima u Javi. Pruža primere, objašnjenja i uobičajene greške koje treba izbegavati.
- Java Programming and Data Structures (Coursera): Online kurs na Coursera platformi koji pokriva osnove programiranja u Javi, uključujući rad sa nizovima i kolekcijama, idealan za početnike i one koji žele da učvrste svoje znanje.
Sledeće
Sortiranje-primeri >| |