Dúvida em Exercício com Array

Considere que tenhamos duas listas de nomes de pessoas, sedo que estas listas já estão em ordem lexicográfica (alfabética). Desejamos juntar estas duas listas numa única, mantendo a ordem alfabética.

Nos dados de entrada, cada linha contém o nome de uma pessoa. Na primeira linha está o tamanho da primeira lista, seguida dos nomes das pessoas desta lista. Em seguida vem outra linha com o tamanho da segunda lista, seguida dos nomes das pessoas da segunda lista.

Meu Algoritmo:

import java.util.Scanner;

public class JuntarNomes {
    public static void main (String args []) {
        Scanner sc = new Scanner (System.in);
        int tamanhoLista1 = sc.nextInt();
        String[] lista1 = new String [tamanhoLista1];
        }
        int tamanhoLista2 = sc.nextInt();
        String [] lista2 = new String [tamanhoLista2];
    
        System.out.println (juncaodenomes(lista1, lista2));
    }
    public static String juncaodenomes (String[] lista1, String [] lista2) {
        
            String resultado = {Não sei o que fazer aqui para juntar as suas Listas, conforme o exercício}
    
                
            return resultado;
        }
        
    }

Só uma dúvida minha pra responder sua questão, tem corrigir esse código usando vetor ou você já conhece ArrayList?

Podes me ajudar usando Vetor?

Fiz usando vetor:

public static void main(String[] args) {
	Scanner input = new Scanner(System.in);
	int tam_lista1, tam_lista2;
	System.out.print("Informe o tamanho da lista 1: ");
	tam_lista1 = input.nextInt();
	System.out.print("Informe o tamanho da lista 2: ");
	tam_lista2 = input.nextInt();
	
	String[] lista1 = new String[tam_lista1];
	String[] lista2 = new String[tam_lista2];
							
	System.out.println("Lista 1:");
	for(int i = 0; i < lista1.length; i++){
		System.out.print("Informe o " + (i+1) + "º nome: ");
		lista1[i] = input.next();
	}
	
	System.out.println("Lista 2:");
	for(int i = 0; i < lista2.length; i++){
		System.out.print("Informe o " + (i+1) + "º nome: ");
		lista2[i] = input.next();
	}
	
	
	System.out.println("Lista Geral:");
	for(int i = 0; i < lista1.length; i++){
		System.out.println(lista1[i]);
	}
	for(int i = 0; i < lista2.length; i++){
		System.out.println(lista2[i]);
	}
			
	
}

@Brugger, me baseei no seu código mas pesquisei como juntar os 2 vetores em 1 só, que me parece ser um dos objetivos do exercício. Achei aqui mesmo no fórum essa dica e fiz a alteração. Veja:

public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int tam_lista1, tam_lista2;
System.out.print("Informe o tamanho da lista 1: ");
tam_lista1 = input.nextInt();
System.out.print("Informe o tamanho da lista 2: ");
tam_lista2 = input.nextInt();

	String[] lista1 = new String[tam_lista1];
	String[] lista2 = new String[tam_lista2];
	String[] lista3 = new String[lista1.length + lista2.length]; //lista com tamanho = soma das listas
							
	System.out.println("Lista 1:");
	for(int i = 0; i < lista1.length; i++){
		System.out.print("Informe o " + (i+1) + "º nome: ");
		lista1[i] = input.next();
	}
	
	System.out.println("Lista 2:");
	for(int i = 0; i < lista2.length; i++){
		System.out.print("Informe o " + (i+1) + "º nome: ");
		lista2[i] = input.next();
	}
	
	input.close(); //fechei o scanner
	
            //copiando lista1 e lista2 para lista3:
	System.arraycopy(lista1, 0, lista3, 0, lista1.length);
	System.arraycopy(lista2, 0, lista3, lista1.length, lista2.length);
	
	System.out.println("Lista Geral:");
	for (int i = 0; i < lista3.length; i++){
	     System.out.println(lista3[i]);
	}

}

saída:
Informe o tamanho da lista 1: 3
Informe o tamanho da lista 2: 5
Lista 1:
Informe o 1º nome: aa
Informe o 2º nome: bb
Informe o 3º nome: cc
Lista 2:
Informe o 1º nome: a
Informe o 2º nome: b
Informe o 3º nome: c
Informe o 4º nome: d
Informe o 5º nome: e
Lista Geral:
aa
bb
cc
a
b
c
d
e

Contudo, ao que me parece, ainda fica faltando resolver o lance de manter a ordem alfabética. Só vi um modo de fazer isso usando ArrayList. Se a nova lista tiver mesmo que juntar as 2 anteriores e organizar de forma alfabética, então com vetor fica complicado.