Interfaccia pubblica della classe SortedArray


public class SortedArray
{

    /*
        Crea un oggetto SortedArray vuoto
    */
    public SortedArray()
    { // completare }

    /*
        verifica se l'array e` vuoto. Prestazioni O(1)
    */
    public boolean isEmpty()
    { // completare }

    /*
        Aggiunge il valore value all'array ordinato, conservando l'ordinamento.
        Prestazioni O(n) (prima dell'inserimento l'array e' ordinato!)
    */
    public void add(int value)
    { // completare }

    /*
        Cancella il valore massimo dall'array, e lo restituisce.
        Prestazioni O(1). Lancia NoSuchElementException se l'array e' vuoto
    */
    public int removeMax() throws NoSuchElementException
    { // completare }

    /*
        Restituisce la media (average) dei valori dell'array
        Prestazioni O(n)
    */
    public double avg()
    { // completare }

    /*
        Cerca un numero value nell'array ordinato (ricerca binaria).
        Prestazioni O(log n). Restituisce l'indice nell'array dell'intero 
        value se questo viene trovato, altrimenti restituisce il valore -1
    */
    public int search(int value)
    { // completare }

}