#include <iostream>
using namespace std;
struct Node {
int podaci;
Node* sledeci;
};
void dodajNaPocetak(Node*& head, int noviPodatak) {
Node* novi = new Node();
novi->podaci = noviPodatak;
novi->sledeci = head;
head = novi;
}
void prikaziListu(Node* head) {
Node* temp = head;
while (temp != nullptr) {
cout << temp->podaci << " -> ";
temp = temp->sledeci;
}
cout << "NULL" << endl;
}
void oslobodiListu(Node*& head) {
Node* temp;
while (head != nullptr) {
temp = head;
head = head->sledeci;
delete temp;
}
}
int main() {
Node* head = nullptr;
dodajNaPocetak(head, 10);
dodajNaPocetak(head, 20);
dodajNaPocetak(head, 30);
cout << "Jednostruko povezana lista: ";
prikaziListu(head);
oslobodiListu(head);
return 0;
}
Napisati program koji uzima od korisnika 10 brojeva i posatavlja ih u povezanu listu. Zatim, pronalazi najveci broj u listi.
#include <iostream>
using namespace std;
// Struktura za čvor povezane liste
struct Cvor {
int broj;
Cvor* sledeci;
};
// Funkcija za dodavanje novog čvora na kraj liste
void dodajNaKraj(Cvor*& glava, int vrednost) {
Cvor* novi = new Cvor;
novi->broj = vrednost;
novi->sledeci = nullptr;
if (glava == nullptr) {
glava = novi;
} else {
Cvor* trenutni = glava;
while (trenutni->sledeci != nullptr) {
trenutni = trenutni->sledeci;
}
trenutni->sledeci = novi;
}
}
// Funkcija za pronalaženje najvećeg broja u listi
int pronadjiNajveci(Cvor* glava) {
if (glava == nullptr) return -1; // Prazna lista
int najveci = glava->broj;
Cvor* trenutni = glava->sledeci;
while (trenutni != nullptr) {
if (trenutni->broj > najveci) {
najveci = trenutni->broj;
}
trenutni = trenutni->sledeci;
}
return najveci;
}
// Glavni program
int main() {
Cvor* glava = nullptr;
int unos;
cout << "Unesite 10 brojeva:" << endl;
for (int i = 0; i < 10; i++) {
cout << "Broj " << i + 1 << ": ";
cin >> unos;
dodajNaKraj(glava, unos);
}
int najveci = pronadjiNajveci(glava);
cout << "Najveci broj u listi je: " << najveci << endl;
// Oslobađanje memorije
while (glava != nullptr) {
Cvor* temp = glava;
glava = glava->sledeci;
delete temp;
}
return 0;
}