Programming Exercises (in italian)¶
Note
This workspace is provided for your convenience. You can use this activecode window to try out anything you like.
- Scrivere un programma che accetti in input due array di interi distinti e restituisca in output il numero di elementi che occorrono in entrambi gli array.
- Come sopra, assumendo che gli array in input siano ordinati
- Scrivere una funzione che, data una stringa, un array di stringhe distinte e ordinate lessicograficamente e la sua lunghezza, cerchi la stringa nell’array utilizzando la ricerca binaria. La funzione restituisce la posizione della stringa se essa `e presente, il valore -1 altrimenti.
- Modificare il Quicksort in maniera tale che ordini gli elementi pari nella parte inferiore dell’array e quelli dispari in quella superiore.
- Scrivere un programma che utilizzi il quick sort per ordinare un vettore di punti del piano cartesiano. Ciascun punto è formato da una coppia di coordinate (x, y). I punti devono essere ordinati per ascissa crescente. A parità di ascissa, si ordini per ordinata decrescente.
- In un sacco ci sono n palline colorate e numerate. Sia S={(x,y): x e’ il numero su una pallina e y è il suo colore}. Dato l’elenco delle coppie in S, calcolare il numero di colori distinti nel sacco.
- Scrivere un programma che legga da tastiera due interi N e K e una sequenza di N stringhe e che stampi le K stringhe piu` frequenti in essa contenute, in ordine lessicografico.
- Dato un albero binario espresso tramite liste ([chiave, [sottoalbero sinistro], [sottoalbero destro]]), scrivere un programma che ritorni l’altezza dell’albero
- Dato un albero binario di ricerca espresso tramite liste come sopra, scrivere un programma che stampi le chiavi dell’albero in modo ordinato.