Ich habe eine sortierte ArrayList A und eine unsortierte ArrayList B, jetzt möchte ich Elemente von B in A zusammenführen, so dass A sortiert bleibt.Die erste Liste ist sortiert und die andere ist jetzt unsortiert. Das ist die bessere Methode, beide Listen zusammenzuführen.
Jetzt kann ich nur zwei Möglichkeiten finden, dies zu tun.
Zuerst ein ist Arraylist B zu sortieren und dann zwei Index-Positionen eine für Arraylist A und andere für Araylist B, dann werden wir Index eins nach dem anderen bewegen B-Liste der Artikel in A. einfügen
Angenommen, die Größe von Arraylist A ist n
und die Größe von Arraylist B ist m
.
Reihenfolge der Komplexität wird O(m Log(m))
(zum Sortieren ArrayList B) + O(n + m)
sein.
Zweiter Ansatz ist nur einen Index für ArrayListaylist B und dann
Binary search
verwenden Artikel von Arraylist B nach A wird
Reihenfolge der Komplexität O(Log(n) * m)
zu platzieren.
Jetzt kann mir bitte jemand sagen, welchen Ansatz sollte ich wählen, auch wenn Sie an einen anderen Ansatz besser als diese beiden denken können dann bitte erwähnen.
Können Sie mir bitte sagen, warum schließen Sie diese Frage? –
Mit unbekannter Beziehung zwischen n und m ist es unmöglich zu sagen. Sie sind hinsichtlich der zeitlichen Komplexität gleich. – Oleg
Ich denke beide Antworten geben in einigen wie eine richtige Antwort. kannst du bitte einen von ihnen akzeptieren, wenn du denkst? – hasan83