Appunti: Strutture dati liste pile code

Appunti per studenti universitari sulle strutture dati fondamentali: liste, pile e code. Domande e risposte brevi per facilitare lo studio e la comprensione degli argomenti.

FrancescoMothq7·28 schede·28 domande
universitàcomputer_scienceprogramming
0
Lo so
1 / 28
0
Sto imparando
Fronte

Cosa sono le liste in programmazione?

Tocca per girare
Retro

Le liste sono strutture dati che memorizzano sequenze ordinate di elementi, di dimensione variabile.

Tocca per girare
Lo so
Sto imparando

Quiz(28 domande)

Domanda 1 di 28

1. Qual è la caratteristica principale della struttura dati pila?

Termini in questo set(28)

Liste(12)

Cosa sono le liste in programmazione?

Le liste sono strutture dati che memorizzano sequenze ordinate di elementi, di dimensione variabile.

Vero o falso: le liste sono statiche.

Falso. Le liste sono dinamiche e possono crescere o ridursi in base alle necessità.

Operazione base su una lista?

Aggiungere o rimuovere elementi, accesso casuale, ricerca, ordinamento.

Come si accede al primo elemento di una lista in Python?

Utilizzando l'indice 0, ad esempio: lista[0].

Confronta liste e array.

- Liste: dimensione variabile - Array: dimensione fissa - Liste: più flessibili - Array: più performanti

Cosa fa il metodo append() su una lista?

Aggiunge un elemento alla fine della lista, modificando la sua lunghezza.

Riempire il vuoto: len() restituisce ____.

Il numero di elementi presenti nella lista.

Qual è la complessità di accesso a un elemento in una lista?

O(1), poiché si accede direttamente tramite indice.

Cosa restituisce il metodo pop()?

Rimuove e restituisce l'ultimo elemento della lista, modificando la lunghezza.

Vero o falso: le liste possono contenere elementi di tipi diversi.

Vero. Le liste possono contenere qualsiasi tipo di dato, anche misto.

Esempio di creazione di una lista.

lista = [1, 2, 3, 'quattro', 5.0]

Cosa fa il metodo remove()?

Rimuove la prima occorrenza di un valore specificato dalla lista.

Pile(8)

Cos'è una pila?

Una pila è una struttura dati LIFO (Last In, First Out) dove l'ultimo elemento inserito è il primo ad essere rimosso.

Utilizzi tipici delle pile?

- Monitoraggio delle chiamate di funzione - Undo in editor di testo - Parsing di espressioni

Vero o falso: Le pile permettono l'accesso casuale agli elementi.

Falso. Le pile non consentono accesso casuale; si può accedere solo all'elemento in cima.

Qual è l'operazione principale di una pila?

Le operazioni principali sono 'push' (inserimento) e 'pop' (rimozione).

Esempio di utilizzo di una pila.

Nell'algoritmo di backtracking, si utilizza una pila per tenere traccia delle scelte fatte.

Pila vs Lista: Differenza principale?

La pila è LIFO, la lista consente accesso sequenziale. Si può accedere a qualunque elemento nella lista.

Completare: In una pila, l'elemento ___ viene rimosso per primo.

L'elemento più recente.

Quale complessità ha l'operazione 'push' in una pila?

La complessità è O(1) poiché l'inserimento avviene sempre in cima.

Code(8)

Cos'è una coda?

Una coda è una struttura dati che segue il principio FIFO (First In, First Out). Gli elementi vengono aggiunti alla fine e rimossi dall'inizio.

Come si implementa una coda?

Può essere implementata usando array o liste collegate. - Array: dimensione fissa. - Liste collegate: dimensione dinamica.

Le code supportano accesso casuale?

Falso. Le code non supportano accesso casuale; si accede solo all'elemento in testa.

Qual è la principale operazione su una coda?

Le operazioni principali sono: - Enqueue: aggiungere un elemento. - Dequeue: rimuovere un elemento.

Come si rappresenta una coda?

Una coda può essere rappresentata come un array con due puntatori: uno per l'inizio e uno per la fine.

Quando usare una coda?

Quando è necessario gestire richieste in ordine di arrivo, come nelle applicazioni di stampa o nei server di rete.

Completa: La coda è ___ rispetto alla pila.

La coda è FIFO, mentre la pila è LIFO (Last In, First Out).

Esempio di utilizzo di una coda.

In un sistema di ticketing: - Le richieste vengono messe in coda. - Servite nell'ordine di arrivo.

Domande in questo set(28)

1. Qual è la caratteristica principale della struttura dati pila?

A.Ultimo elemento inserito è il primo ad essere rimosso
B.Primo elemento inserito è il primo ad essere rimosso
C.Consente accesso casuale agli elementi
D.Gli elementi sono ordinati in modo crescente

2. Quale tra le seguenti affermazioni descrive correttamente una coda?

A.Una coda segue il principio FIFO.
B.Una coda consente accesso casuale agli elementi.
C.Una coda rimuove gli elementi dalla fine.
D.Una coda è sempre di dimensione fissa.

3. Cosa rappresenta una lista in programmazione?

A.Una sequenza ordinata di elementi
B.Un insieme di dati non ordinati
C.Un tipo di variabile fissa
D.Un dizionario di valori chiave

4. Quale operazione non è tipicamente associata alle pile?

A.Push
B.Pop
C.Accesso casuale
D.Top

5. Quale operazione consente di aggiungere un elemento a una coda?

A.Enqueue
B.Dequeue
C.Pop
D.Push

6. Quale comando permette di aggiungere un elemento alla fine di una lista in Python?

A.append()
B.extend()
C.insert()
D.add()

7. Quale scenario descrive meglio l'uso di una pila?

A.Gestire la cronologia delle pagine web
B.Tenere traccia delle chiamate di funzione
C.Ordinare una lista di numeri
D.Fare ricerche in una lista

8. In quale scenario è più appropriato utilizzare una coda?

A.Gestire le richieste di un server web.
B.Eseguire operazioni matematiche.
C.Gestire la memoria di un programma.
D.Stoccare variabili temporanee.

9. Qual è la complessità temporale per accedere a un elemento in una lista?

A.O(1)
B.O(n)
C.O(log n)
D.O(n^2)

10. Quale delle seguenti affermazioni è vera riguardo l'operazione 'pop' in una pila?

A.Restituisce l'elemento in cima e lo rimuove
B.Restituisce tutti gli elementi
C.Aggiunge un nuovo elemento in cima
D.Non modifica la pila

11. Quale delle seguenti affermazioni è falsa riguardo alle code?

A.Le code non supportano l'accesso casuale.
B.Una coda può essere implementata con liste collegate.
C.Le code seguono il principio LIFO.
D.Possono essere implementate utilizzando array.

12. Cosa restituisce la funzione len() a una lista?

A.Il numero di elementi nella lista
B.La somma degli elementi
C.Il primo elemento della lista
D.Il tipo di dati contenuti

13. Cosa succede se si chiama 'pop' su una pila vuota?

A.Genera un'eccezione
B.Restituisce null
C.Rimuove un elemento casuale
D.Non fa nulla

14. Come può essere rappresentata una coda in memoria?

A.Con un array e due puntatori.
B.Con un solo puntatore.
C.Con una matrice bidimensionale.
D.Con una lista statica.

15. Quale delle seguenti affermazioni è vera riguardo le liste?

A.Le liste possono contenere elementi di tipi diversi
B.Le liste sono sempre di dimensione fissa
C.Le liste non possono essere modificate
D.Le liste non possono contenere numeri

16. In che modo le pile sono diverse dalle liste?

A.Le pile sono sempre più lunghe delle liste
B.Le pile consentono solo accesso in cima mentre le liste consentono accesso sequenziale
C.Le pile richiedono più memoria delle liste
D.Le pile non possono contenere elementi duplicati

17. Cosa accade a un elemento quando viene eseguita l'operazione Dequeue?

A.Viene aggiunto alla fine della coda.
B.Viene rimosso dall'inizio della coda.
C.Viene spostato in una pila.
D.Viene duplicato nella coda.

18. Cosa fa il metodo pop() su una lista?

A.Rimuove e restituisce l'ultimo elemento
B.Aggiunge un nuovo elemento
C.Restituisce il primo elemento senza rimuoverlo
D.Ordina gli elementi della lista

19. Quale complessità ha l'operazione 'push' su una pila?

A.O(1)
B.O(n)
C.O(log n)
D.O(n^2)

20. Quale è la differenza principale tra una coda e una pila?

A.Le code sono FIFO e le pile sono LIFO.
B.Le code possono contenere solo numeri.
C.Le pile permettono accesso casuale.
D.Le code non possono essere implementate con array.

21. Quale delle seguenti operazioni NON è supportata da una lista?

A.Aggiungere un elemento
B.Rimuovere un elemento
C.Ordinare gli elementi
D.Creare una lista di dimensione fissa

22. Quale delle seguenti affermazioni è falsa riguardo le pile?

A.Le pile sono strutture dati LIFO
B.Gli elementi possono essere rimossi in qualsiasi ordine
C.Le pile hanno un'operazione di accesso alla cima
D.Sono usate nel backtracking

23. In un sistema di ticketing, come vengono gestite le richieste?

A.Vengono messe in coda e servite nell'ordine di arrivo.
B.Vengono servite casualmente.
C.Vengono rimosse dalla coda all'inizio.
D.Vengono elaborate tutte insieme.

24. Come si accede al secondo elemento di una lista in Python?

A.lista[1]
B.lista[2]
C.lista[0]
D.lista[-1]

25. Cosa fa il metodo remove() su una lista?

A.Rimuove la prima occorrenza di un valore specificato
B.Rimuove l'ultimo elemento
C.Aggiunge un elemento specificato
D.Restituisce un elemento senza rimuoverlo

26. Qual è la differenza principale tra una lista e un array?

A.Le liste sono dinamiche, mentre gli array sono statici
B.Le liste non possono contenere numeri
C.Le liste sono più lente degli array
D.Gli array possono contenere tipi misti di dati

27. Cosa restituisce l'operazione lista[0]?

A.Il primo elemento della lista
B.L'ultimo elemento della lista
C.La lunghezza della lista
D.Il secondo elemento della lista

28. Quale di queste affermazioni sul metodo extend() è corretta?

A.Aggiunge più elementi alla lista da un'altra lista
B.Rimuove un elemento specificato
C.Restituisce la lunghezza della lista
D.Ordina gli elementi della lista

Set correlati

Crea il tuo set di studio

Carica un PDF, incolla le tue note o descrivi un argomento – l'IA genera schede, quiz e altro in pochi secondi.