Wie kann ich zwei lexikographisch geordnete String ArrayLists in eine neue dritte ArrayList zusammenführen, ohne die beiden ursprünglichen Listen zu ändern? Duplikate sind zum Beispiel erlaubt. Wenn list1 ist: 1, 3, 5 und list2 ist: 2, 4, 7, 8, 8. Dann sollte die neue zusammengeführte list3 sein: 1, 2, 3, 4, 5, 7, 8, 8. Ich muss Erstellen Sie 2 While-Loops, wobei der erste bis zu einer ganzen Liste weiterläuft und der zweite die Reste aus der anderen Liste übernimmt und alle übrig gebliebenen Elemente am Ende der neuen Liste platziert3. Ich muss im Grunde beide Listen-Indizes vergleichen, um zu sehen, welches Element voranschreitet. Alles sollte korrekt sein, aber ich brauche Hilfe beim Erstellen der While-Schleifen.Wie kann ich zwei lexikographisch geordnete String ArrayLists in eine neue dritte ArrayList zusammenführen?
Sorry für die lange Beschreibung, aber ich stimme jedem, der hilft! Vielen Dank!
public class Merge{
public static boolean isStringArrayListSorted(ArrayList<String> data) {
for (int i = 1; i < data.size(); i++) {
if (data.get(i - 1).compareTo(data.get(i)) > 0) {
return false;
}
}
return true;
}
public Merge (ArrayList<String> list1, ArrayList<String> list2){
ArrayList<String> list3 = new ArrayList<String>();
list1.add(0, "a");
list1.add(1, "c");
list1.add(2, "e");
list1.add(3, "g");
list2.add(0, "b");
list2.add(1, "d");
list2.add(2, "f");
list2.add(3, "h");
list2.add(4, "i");
list2.add(5, "j");
while(list1!= null){
if(list1.get(0)> list2.get(0))
{
list3.add(index, element);
}
}
}
FYI, müssen Sie die Indizes in Ihrer Liste nicht benötigen() Aufrufe, die einzelnen Argument add() -Methoden hängt an das Ende. – Roman