package Solution; import java.util.List; import java.util.ArrayList; public class Merger { public static List merge(List list1, List list2) { ArrayList resultatliste = new ArrayList(); int liste1position = 0; int liste2position = 0; int inttoadd = 0; while (liste1position+liste2position < (list1.size()+list2.size())) { if (list1.size() != liste1position && (list2.size() == liste2position || (list1.get(liste1position) > list2.get(liste2position)))) { inttoadd=list1.get(liste1position); liste1position++; } else { inttoadd=list2.get(liste2position); liste2position++; } if(!resultatliste.contains(inttoadd)) { resultatliste.add(inttoadd); } } return resultatliste; } public static void main(String[] args) { ArrayList liste1 = new ArrayList(); liste1.add(1); liste1.add(3); liste1.add(47); liste1.add(51); liste1.add(1058); liste1.add(1058); liste1.add(1058); liste1.add(1058); liste1.add(20517); ArrayList liste2 = new ArrayList(); liste2.add(2); liste2.add(77); liste2.add(190); liste2.add(1058); liste2.add(20517); liste2.add(105815); liste2.add(2051415); System.out.println(Merger.merge(liste1, liste2)); } }