Class ArrayAlgorithms

java.lang.Object
  extended by ArrayAlgorithms

public class ArrayAlgorithms
extends java.lang.Object

riunisce algoritmi applicabili agli array di numeri interi


Constructor Summary
ArrayAlgorithms()
           
 
Method Summary
static int guardedLinearSearch(int[] a, int size, int target)
          ricerca lineare con sentinella.
static void insertionSort(int[] a)
          ordinamento per inserimento degli elementi di un array di numeri interi.
static int iterativeBinarySearch(int[] a, int v)
          ricerca binaria.
static int linearSearch(int[] a, int target)
          ricerca lineare.
static void mergeSort(int[] a)
          ordinamento per fusione degli elementi di un array di numeri interi.
static int recursiveBinarySearch(int[] a, int v)
          ricerca binaria.
static void selectionSort(int[] a)
          ordinamento per selezione degli elementi di un array di numeri interi.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ArrayAlgorithms

public ArrayAlgorithms()
Method Detail

selectionSort

public static void selectionSort(int[] a)
ordinamento per selezione degli elementi di un array di numeri interi. O(n*n).

Parameters:
a - l'array da ordinare

mergeSort

public static void mergeSort(int[] a)
ordinamento per fusione degli elementi di un array di numeri interi. O(n*log n).

Parameters:
a - l'array da ordinare

insertionSort

public static void insertionSort(int[] a)
ordinamento per inserimento degli elementi di un array di numeri interi. O(n) nel caso migliore. O(n*n) nei casi medio e peggiore..

Parameters:
a - l'array da ordinare

linearSearch

public static int linearSearch(int[] a,
                               int target)
ricerca lineare. O(n).

Parameters:
a - l'array in cui viene effettuata la ricerca
target - l'elemento da ricercare
Returns:
l'indice nell'array della prima occorrenza dell'elemento cercato, se presente, -1 altrimenti

guardedLinearSearch

public static int guardedLinearSearch(int[] a,
                                      int size,
                                      int target)
ricerca lineare con sentinella. O(n).

Parameters:
a - l'array riempito solo in parte in cui viene effettuata la ricerca
size - il numero di elementi inseriti nell'array riempito solo in parte
target - l'elemento da ricercare
Returns:
l'indice nell'array della prima occorrenza dell'elemento cercato, se presente, -1 altrimenti

recursiveBinarySearch

public static int recursiveBinarySearch(int[] a,
                                        int v)
ricerca binaria. O(n). Algoritmo ricorsiva

Parameters:
a - l'array in cui viene effettuata la ricerca
v - l'elemento da ricercare
Returns:
l'indice nell'array della prima occorrenza dell'elemento cercato, se presente, -1 altrimenti

iterativeBinarySearch

public static int iterativeBinarySearch(int[] a,
                                        int v)
ricerca binaria. O(n). Algoritmo iterativo

Parameters:
a - l'array in cui viene effettuata la ricerca
v - l'elemento da ricercare
Returns:
l'indice nell'array della prima occorrenza dell'elemento cercato, se presente, -1 altrimenti