Class OrderedIntList

java.lang.Object
it.unimi.di.prog2.h19.OrderedIntList

public class OrderedIntList extends Object
Lista ordinata di interi senza ripetizioni.
  • Field Details

    • isEmpty

      private boolean isEmpty
      Indica se la lista è vuota.
    • value

      private int value
      Il valore conservato da questo nodo della lista.
    • left

      private OrderedIntList left
      Due sottoliste, contenenti i valori rispettivamente minori e maggiori di value.
  • Constructor Details

    • OrderedIntList

      public OrderedIntList()
      Costruisce una lista vuota.
  • Method Details

    • size

      public int size()
      Restituisce il numero di elementi nella lista.
      Returns:
      il numero di elementi nella lista, 0 se è vuota.
    • isEmpty

      public boolean isEmpty()
      Consente di determinare se la lista è vuota.
      Returns:
      se la lista è vuota.
    • contains

      public boolean contains(int value)
      Consente di determinare se un valore appartiene alla lista.
      Parameters:
      value - il valore da cercare.
      Returns:
      se appartiene alla lista.
    • add

      public void add(int value)
      Aggiunge un elemento alla lista.
      Parameters:
      value - l'elemento da aggiungere.
      Throws:
      IllegalArgumentException - se l'elemento è già presente.
    • min

      public int min()
      Restituisce il minimo valore della lista.
      Returns:
      il minimo valore della lista.
      Throws:
      NoSuchElementException - se la lista è vuota.
    • max

      public int max()
      Restituisce il massimo valore della lista.
      Returns:
      il massimo valore della lista.
      Throws:
      NoSuchElementException - se la lista è vuota.
    • remove

      public boolean remove(int value)
      Rimuove un elemento dalla lista.
      Parameters:
      value - l'elemento da rimuovere.
      Returns:
      se l'elemento è stato rimosso.
    • emptyIterator

      private Iterator<Integer> emptyIterator()
      Un iteratore vuoto.
      Returns:
      l'iteratore.
    • concat

      private Iterator<Integer> concat(Iterator<Integer> first, Iterator<Integer> second)
      Un ieratore ottenuto per concatenazione.

      L'iteratore elenca dapprima gli elementi di first, poi value e quindi quelli di second.

      Parameters:
      first - il primo iteratore, non deve essere null.
      second - il secondo iteratore, non deve essere null.
      Returns:
      l'iteratore concatenato.
    • smallToBig

      public Iterator<Integer> smallToBig()
      Iteratore che elenca gli elementi della lista in ordine crescente.
      Returns:
      l'iteratore.
    • bigToSmall

      public Iterator<Integer> bigToSmall()
      Iteratore che elenca gli elementi della lista in ordine decrescente.
      Returns:
      l'iteratore.
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object