-
Notifications
You must be signed in to change notification settings - Fork 1
/
SortingAlgorithmResult.java
65 lines (56 loc) · 1.6 KB
/
SortingAlgorithmResult.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
package it.unicam.cs.asdl2122.pt1;
import java.util.List;
/**
* Risultato di un algoritmo di ordinamento. Contiene la sequenza ordinata di
* elementi e il numero di operazioni di confronto effettuate.
*
* @author Luca Tesei
*
* @param <E>
* Tipo degli elementi della sequenza ordinata.
*/
public class SortingAlgorithmResult<E extends Comparable<E>> {
private List<E> l;
private int countCompare;
/**
* Costruisce un risultato di un algoritmo di ordinamento.
*
* @param l
* una lista ordinata in maniera crescente
* @param countCompare
* numero di operazioni di confronto effettuate
* durante l'ordinamento
*/
public SortingAlgorithmResult(List<E> l, int countCompare) {
this.l = l;
this.countCompare = countCompare;
}
/**
* Restituisce la lista ordinata.
*
* @return la lista ordinata
*/
public List<E> getL() {
return l;
}
/**
* Restituisce il numero di confronti effettuati.
*
* @return il numero di confronti effettuati.
*/
public int getCountCompare() {
return countCompare;
}
/**
* Controlla che la lista restituita sia in ordine crescente.
*
* @return true se la lista è ordinata in maniera crescente, false
* altrimenti
*/
public boolean checkOrder() {
for (int i = 0; i < l.size() - 1; i++)
if (this.l.get(i).compareTo(this.l.get(i+1)) > 0)
return false;
return true;
}
}