1. Costruite un albero 2-3-4 a partire dall'albero vuoto ed effettuando l'inserimento uno dopo l'altro dei caratteri GIUGNOTREDM. Disegnate l'albero ottenuto al termine di ciascun inserimento (in totale 10 alberi

  2. Esibite (codice o pseudocodice) un algoritmo non ricorsivo per la visita di un albero binario. Che complessità in tempo ha la visita di un albero con n vertici?

  3. Indicate per ciascuna delle seguenti asserzioni se è vera o falsa

    1. $3n=O(n/2)$ VERO con $c\geq 6\ \ \forall n \in \R$
    2. $\log_{10}n=\Omega(n)$ FALSO (sarebbe vero con c=0 e n≥1)
    3. $2^n=\Theta(2^{n+1})$ VERO se $c \in \R$: $c \leq 0.5 \leq d$
    4. $\sqrt{n}=\Omega(\log_2 n^2)$ NON LO SO FAREE
    5. $n^2=\Omega(n^3)$ FALSO
    6. $\log_2 n=\Theta(\log_2 n^2)$ VERO con $c \leq 0.5 \leq d$
  4. Quando un algoritmo di odinamento della classe confronti e scambi si dice essere ottimale? Quali tra gli algoritmi di tale classe presentati nel corso risultano essere ottimali?

    Un algoritmo di ordinamento della classe confronti e scambi si dice essere ottimale quando ha complessità nel caso peggiore $O(n \log n)$. Gli algoritmi di tale classe presentati nel corso che risultano essere ottimali sono: Mergesort, Heapsort

  5. Eseguite l'algoritmo di Kruskal sul grafo seguente. Mostrate la soluzione parziale (insieme di lati) al termine di ciascuna iterazione

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/bebd838e-6789-4b60-96cf-4eef92aeb2e9/Untitled.png

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/6d42eb1a-e4fa-426f-814a-39a3425c6519/Untitled.png