Aggiunta di parziale

This commit is contained in:
Emanuele Slusarz
2026-05-10 03:03:50 +02:00
parent 56d6c1e9d6
commit 29ef5b6655
289 changed files with 11823 additions and 1733 deletions
@@ -0,0 +1,46 @@
package jcf_set.exercise;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.Iterator;
import java.util.List;
import java.util.Set;
import java.util.TreeSet;
public class EsercizioParole {
/*
* EX1 del 27-01-2026 (I Appello)
* Si scriva un metodo
* public List<String> DifferentWordsList(List<String>)
* che, data in input una lista di stringhe, restituisce una
* nuova lista priva di elementi duplicati, contenente tutte le
* stringhe distinte di list e ordinata per lunghezze decrescenti
* (a parità di lunghezza ordinamento lessicografico crescente)
*/
public List<String> DifferentWordsList(List<String> lista) {
Set<String> listaOrd = new TreeSet<String>(new Comparator<String>() {
@Override
public int compare(String s1, String s2) {
int l1 = s1.length();
int l2 = s2.length();
int cmp = Integer.compare(l2, l1);
if (cmp != 0) return cmp;
return s1.compareTo(s2);
}
});
if (lista == null || lista.isEmpty()) return new ArrayList<String>(listaOrd);
Iterator<String> it = lista.iterator();
while (it.hasNext()) {
listaOrd.add(it.next());
}
return new ArrayList<String>(listaOrd);
}
}