Hmm uh... Her skal man nok tænke sig om for man kan måske komme til at lave en halv langsom algoritme hvis man ikke tænker lidt over det.
Personligt vil sorterer din arrayliste ud fra alfabetisk rækkefølge. Når det er gjord er det let er se om der er nogen dubletter, for de kommer jo lige efter hinanden. Altså skal man altså bare hele tiden sammenligne med strengen før i din ArrayList. Dette vil nok være en af de hurtigste løsninger...
For at sorterer din arrayliste kan du benytte Collection.sort. Her er et lille eksempel:
import java.util.ArrayList;
import java.util.Collections;
public class test {
public static void main(String[] args){
ArrayList arrayList = new ArrayList();
arrayList.add("d");
arrayList.add("a");
arrayList.add("h");
arrayList.add("w");
arrayList.add("b");
/*
#
To sort an ArrayList object, use Collection.sort method. This is a
#
static method. It sorts an ArrayList object's elements into ascending order.
#
*/
Collections.sort(arrayList);
System.out.println("ArrayList elements after sorting in ascending order : ");
for(int i=0; i<arrayList.size(); i++)
System.out.println(arrayList.get(i));
}
}