Oi, Thaynara! Tudo joia?
Vou te explicar passo a passo, imagino que assim fique mais fácil para entender.
Aqui, estamos utilizando o método concat para concatenar o resultado com uma das partes que sobraram após a ordenação. 
A condição posicaoAtualParte1 < parte1.length verifica se ainda há elementos na parte 1 que não foram adicionados ao resultado. Se essa condição for verdadeira, utilizamos o método slice para pegar a parte restante da parte 1 a partir da posição atual (posicaoAtualParte1). 
Caso contrário, utilizamos o método slice para pegar a parte restante da parte 2 a partir da posição atual (posicaoAtualParte2).
Dessa forma, o concat irá juntar o resultado com a parte que sobrou, seja da parte 1 ou da parte 2, e retornar o resultado final da função.
Espero ter ajudado a esclarecer a sua dúvida! Se tiver mais alguma pergunta, é só me dizer. 
Grande abraço e bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.