Exerciții SDA: Diferență între versiuni

De la WikiLabs
Jump to navigationJump to search
Fără descriere a modificării
Linia 11: Linia 11:
#* eliminarea unui element de la o poziție specificată din listă;
#* eliminarea unui element de la o poziție specificată din listă;
#* căutarea unui element în listă folosind un algoritm eficient - O(logn);
#* căutarea unui element în listă folosind un algoritm eficient - O(logn);
# Realizați o structură de tip coadă (FIFO) de șiruri de caractere folosind vectori. Dimensiunea maximă a cozii este specificată inițial și nu se face realocare. Scrieți funcții pentru:
#* adăugarea unui element în coadă;
#* citirea unui element din coadă;
#* interogarea numărului de elemente din coadă;
# Realizați o structură de tip stivă (LIFO) de valori de tip float folosind vectori. Dimensiunea maximă a stivei este specificată inițial și nu se face realocare. Scrieți funcții pentru:
#* adăugarea unui element în stivă;
#* citirea unui element din stivă;
#* interogarea numărului de elemente din stivă;
== Liste simplu și dublu înlănțuite ==
# Realizați un program care să implementeze o listă inteligentă de valori folosind înlănțuiera dublă. Scrieți funcții pentru:
#* adăugarea unui element la sfărșitul listei;
#* adăugarea unui element la o poziție specificată din listă;
#* eliminarea unui element de la o poziție specificată din listă;
#* căutarea unui element în listă;
#* sortarea listei cu un algoritm eficient - O(n*logn);
# Realizați un program care să implementeze o listă inteligentă de valori '''sortate''' folosind înlănțuiera simplă (lista trebuie menținută sortată la orice modificare). Scrieți funcții pentru:
#* adăugarea unui element folosind un algoritm eficient - O(logn) pentru identificarea poziției corecte;
#* eliminarea unui element de la o poziție specificată din listă;
#* căutarea unui element în listă;
# Realizați o structură de tip coadă (FIFO) de șiruri de caractere folosind înlănțuiera simplă. Nu există o dimensiune maximă a cozii. Scrieți funcții pentru:
#* adăugarea unui element în coadă;
#* citirea unui element din coadă;
#* interogarea numărului de elemente din coadă;
# Realizați o structură de tip stivă (LIFO) de valori de tip float folosind înlănțuiera simplă. Nu există o dimensiune maximă a stivei. Scrieți funcții pentru:
#* adăugarea unui element în stivă;
#* citirea unui element din stivă;
#* interogarea numărului de elemente din stivă;

Versiunea de la data 17 mai 2015 17:24

Vectori

  1. Realizați un program care să implementeze o listă inteligentă de valori folosind vectori. Scrieți funcții pentru:
    • adăugarea unui element la sfărșitul listei;
    • adăugarea unui element la o poziție specificată din listă;
    • eliminarea unui element de la o poziție specificată din listă;
    • căutarea unui element în listă;
    • sortarea listei cu un algoritm eficient - O(n*logn);
  2. Realizați un program care să implementeze o listă inteligentă de valori sortate folosind vectori (lista trebuie menținută sortată la orice modificare). Scrieți funcții pentru:
    • adăugarea unui element folosind un algoritm eficient - O(logn) pentru identificarea poziției corecte;
    • eliminarea unui element de la o poziție specificată din listă;
    • căutarea unui element în listă folosind un algoritm eficient - O(logn);
  3. Realizați o structură de tip coadă (FIFO) de șiruri de caractere folosind vectori. Dimensiunea maximă a cozii este specificată inițial și nu se face realocare. Scrieți funcții pentru:
    • adăugarea unui element în coadă;
    • citirea unui element din coadă;
    • interogarea numărului de elemente din coadă;
  4. Realizați o structură de tip stivă (LIFO) de valori de tip float folosind vectori. Dimensiunea maximă a stivei este specificată inițial și nu se face realocare. Scrieți funcții pentru:
    • adăugarea unui element în stivă;
    • citirea unui element din stivă;
    • interogarea numărului de elemente din stivă;

Liste simplu și dublu înlănțuite

  1. Realizați un program care să implementeze o listă inteligentă de valori folosind înlănțuiera dublă. Scrieți funcții pentru:
    • adăugarea unui element la sfărșitul listei;
    • adăugarea unui element la o poziție specificată din listă;
    • eliminarea unui element de la o poziție specificată din listă;
    • căutarea unui element în listă;
    • sortarea listei cu un algoritm eficient - O(n*logn);
  2. Realizați un program care să implementeze o listă inteligentă de valori sortate folosind înlănțuiera simplă (lista trebuie menținută sortată la orice modificare). Scrieți funcții pentru:
    • adăugarea unui element folosind un algoritm eficient - O(logn) pentru identificarea poziției corecte;
    • eliminarea unui element de la o poziție specificată din listă;
    • căutarea unui element în listă;
  3. Realizați o structură de tip coadă (FIFO) de șiruri de caractere folosind înlănțuiera simplă. Nu există o dimensiune maximă a cozii. Scrieți funcții pentru:
    • adăugarea unui element în coadă;
    • citirea unui element din coadă;
    • interogarea numărului de elemente din coadă;
  4. Realizați o structură de tip stivă (LIFO) de valori de tip float folosind înlănțuiera simplă. Nu există o dimensiune maximă a stivei. Scrieți funcții pentru:
    • adăugarea unui element în stivă;
    • citirea unui element din stivă;
    • interogarea numărului de elemente din stivă;