Se afișează postările cu eticheta tablouunidimensional. Afișați toate postările
Se afișează postările cu eticheta tablouunidimensional. Afișați toate postările

luni, 26 august 2024

Operațiile destinate prelucrării tipurilor de date tablou unidimensional

În programarea Java, vectorii (tablourile) sunt utilizați pentru a stoca un număr fix de valori de același tip. Mai jos veți găsi câteva operații importante prezentate cât se poate de simplu, cu algoritm și exemple practice.

1️⃣ Declararea și inițializarea unui vector

Operația: Crearea unui vector și alocarea de valori.
Algoritm:
  1. Se declară vectorul.
  2. Se initializează cu valori.
int[] v = {3, 5, 7, 2, 9};

2️⃣ Citirea elementelor unui vector de la tastatură

Operația: Crearea unui vector și alocarea de valori citite de la tastatură.
Algoritm:
  1. Citește numărul de elemente.
  2. Creează vectorul.
  3. Parcurge și citește fiecare valoare.
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int[] v = new int[n];
for(int i = 0; i < n; i++){
    v[i] = sc.nextInt();
}

3️⃣ Afișarea elementelor unui vector

Operația: Afișarea tuturor valorilor din vector.
Algoritm:
  1. Parcurge vectorul.
  2. Afișează fiecare element.
for(int i = 0; i < v.length; i++){
    System.out.print(v[i] + " ");
}

4️⃣ Calculul sumei elementelor din vector

Operația: Determinarea sumei tuturor valorilor.
Algoritm:
  1. Inițializează suma cu 0.
  2. Adună succesiv toate elementele.
int suma = 0;
for(int i = 0; i < v.length; i++){
    suma += v[i];
}
System.out.println("Suma = " + suma);

5️⃣ Determinarea valorii maxime

Operația: Găsirea celui mai mare element.
Algoritm:
  1. Se presupune că primul element este maxim.
  2. Se compară toate valorile cu acesta.
int max = v[0];
for(int i = 1; i < v.length; i++){
    if(v[i] > max)
        max = v[i];
}
System.out.println("Maximul = " + max);

6️⃣ Determinarea valorii minime

Operația: Găsirea celui mai mic element.
Algoritm:
  1. Se consideră primul element minim.
  2. Se compară toate valorile cu el.
int min = v[0];
for(int i = 1; i < v.length; i++){
    if(v[i] < min)
        min = v[i];
}
System.out.println("Minimul = " + min);

7️⃣ Căutarea unui element în vector

Operația: Verificarea existenței unei valori.
Algoritm:
  1. Se parcurge vectorul.
  2. Dacă un element coincide cu cel căutat → găsit.
int caut = 7;
boolean gasit = false;
for(int i = 0; i < v.length; i++){
    if(v[i] == caut){
        gasit = true;
        break;
    }
}
if(gasit)
    System.out.println("Elementul a fost găsit.");
else
    System.out.println("Elementul NU există.");

8️⃣ Determinarea mediei elementelor

Operația: Calculul mediei aritmetice.
Algoritm:
  1. Se calculează suma.
  2. Se împarte la numărul elementelor.
int suma = 0;
for(int x : v){
    suma += x;
}
double media = (double)suma / v.length;
System.out.println("Media = " + media);

9️⃣ Sortarea elementelor prin metoda bulelor (Bubble Sort)

Operația: Sortarea vectorului în ordine crescătoare prin compararea elementelor vecine.
Algoritm:
  1. Parcurge vectorul de mai multe ori.
  2. Compară elementele adiacente.
  3. Dacă sunt în ordine greșită, le interschimbă.
  4. Cel mai mare element „urcă” spre final.
for(int i = 0; i < v.length - 1; i++){
    for(int j = 0; j < v.length - 1 - i; j++){
        if(v[j] > v[j + 1]){
            int temp = v[j];
            v[j] = v[j + 1];
            v[j + 1] = temp;
        }
    }
}
System.out.println("Vector sortat cu metoda bulelor:");
for(int x : v)
    System.out.print(x + " ");

🔟 Inversarea elementelor din vector

Operația: Ultimul element devine primul și invers.
Algoritm:
  1. Se folosesc doi indici (stânga și dreapta).
  2. Se interschimbă valorile până la mijloc.
int left = 0, right = v.length - 1;
while(left < right){
    int temp = v[left];
    v[left] = v[right];
    v[right] = temp;
    left++;
    right--;
}