ORDINAMENTO VETTORI

A cura di Roberta Del Balzo

INTRO:

Ma che cos'è un Vettore?

Un array in Java è un contenitore che permette di gestire una sequenza di lunghezza fissa di elementi tutti del medesimo tipo. Il numero di elementi in un array, detto lunghezza dell’array, deve essere dichiarato al momento della sua allocazione e non può essere cambiato.

Dichiarare un array in Java:

La sintassi per la dichiarazione di una variabile di tipo array è la seguente:

  • Tipo[] nome;

nella quale si deve osservare l’uso delle parentesi quadre ‘[]‘ tra il tipo ed il nome della variabile (anche se la documentazione riporta sempre questa forma della dichiarazione è ammissibile anche postporre le parentesi quadre dopo l’identificatore:

  • Tipo nome[];

Tipo può essere sia un tipo primitivo di java, sia il nome di una classe.

ALLOCARE L'ARRAY

Per default le variabili di tipo array sono inizializzate con il valore null. Quindi, prima di poterle usare, dovremo inizializzarle allocando per esse la memoria per mezzo della consueta keyword ‘new’:

  • nome = new Tipo[n];

che riserva (o ‘allocà) la memoria necessaria per contenere n elementi di tipo Tipo.

Tutti gli elementi dell’array sono inizializzati con il valore di default previsto dal tipo che abbiamo indicato. Ad esempio, se Tipo è una classe tutti gli elementi verranno inizializzati anull e quindi andranno a loro volta allocati.

Inizializzare array con liste

L’inizializzazione degli elementi dell’array è prolissa, poco leggibile e decisamente scomoda da collocare nel codice (soprattutto se vogliamo dichiarare numeroGiorniPerMese come static, provate per fare pratica !!). Ma Java ammette una sintassi per allocare ed inizializzare gli array in modo più diretto:

Questa modalità prevede che i valori degli elementi dell’array possano essere elencati in una lista racchiusa tra parentesi graffe e separati da virgole. Naturalmente tutti i valori della lista devono essere del tipo specificato per l’array (o ad esso assegnabile, ma questa affermazione risulterà probabilmente più chiara quando avremo preso confidenza con con il concetto di derivazione di una classe da un’altra).

Operatori

Gli operatori in Java sono simili a quelli che si trovano in altri linguaggi di programmazione: il core di Java prevede per i tipi primitivi operatori algebrici, logici, etc. In questa lezione esaminiamo questi operatori di base, ma oltre a questi possiamo definire, per ogni tipo, metodi che ne implementino di nuovi.

ORDINAMENTO

CICLI DI ITERAZIONE

I costrutti iterativi ci consentono di eseguire ripetutamente un determinato blocco di codice racchiuso tra parentesi graffe ‘{}’

In Java i costrutti iterativi sono sostanzialmente 3, comunemente denominati in base alle keywords che li contraddistinguono: while, do-while e for.

  • WHILE:  Il ciclo while esegue una istruzione o un blocco di codice finché rimane verificata una certa condizione. In italiano diremmo: “fino a quando la condizione è vera esegui il blocco”.dove condizione deve essere una variabile o una espressione di tipo booleano. Ecco un esempio:
  • DO WHILE: c è una variante del WHILE.Questo ciclo causa l’esecuzione del blocco tra graffe fino a quando la condizione è vera ma con la importante differenza che in questo caso condizione viene presa in considerazione alla fine del blocco. Quindi l’esecuzione del blocco di istruzioni viene effettuata almeno una volta:
  • FOR: Anche questo ciclo esegue ripetutamente un blocco di codice. Viene preferito agli altri cicli quando conosco il numero di volte che voglio far eseguire una determinata operazione. SINTASSI:

COSTRUTTI CONDIZIONALI

I costrutti condizionali sono delle espressioni che consentono di alterare l’usuale modo di esecuzione di un programma e di eseguire una certa porzione di codice in base ad una “scelta”.

In Java esistono sostanzialmente 2 costrutti condizionali, if-else (o if-then-else)e switch-case, in questa lezione li esamineremo entrambi.

  • IF ELSE

Le condizioni sono espressioni di tipo boolean!!!!

  • bubble sort
  • selection sort

ESISTONO PIU' MODI PER ORDINARE UN SEMPLICE ARRAY.

  • quick sort
  • insertion sort
  • merge sort

BUBBLE SORT

Es:

                                                      Proprietà bubble sort:

CODIFICA IN JAVA



UN  BREVE TUTORIAL PER SALDARE I CAPI SALDI:

CLICCA SU QUESTO BOTTONE SE NE VUOI SAPERE DI PIU'

--------------------------------------------

SELECTION SORT

Alla prima iterazione verrá selezionato il valore piú piccolo dell' intero vettore e sará scambiato con il vaolore che in quel momento occupa la prima posizione, poi alla seconda iterazione viene selezionato il secondo valore piú piccolo del vettore e sará scambiato con il valore che in quel momento occupa la seconda posizione, e cosí via fino a quando tutti gli elementi del vettore non sono collocati nella loro giusta posizione.

QUICK SORT

-----------------------------------------------------------------------------------------

INSERTION SORT

Ed ecco una simpatica gif :

Propongo ancora un altro schemino esplicativo:

Codice in Java

-----------------------------------------------------------------------------------------

MERGE SORT

SPERO DI ESSERVI STATA UTILE,ALLA PROSSIMA!!!

vieni a trovarci!

il nostro istituto:

io

Comment Stream

2 years ago
0

belllo

2 years ago
0

Steve Jobs

2 years ago
0

ti fa un baffo

2 years ago
0

BRAVISSIMA,COME HAI FATTO?

2 years ago
0

UAU,FANTASTIC! 10+

2 years ago
0

Roberta, non ho capito un cazzo, potresti spiegare meglio?😟

2 years ago
0

SI,guarda adesso!

2 years ago
0

Me lo hai copiato, stronza 😡😂

2 years ago
0

Uau anche tu appassionata programmatrice?