Como encontrar o k-ésimo elemento na união de duas matrizes ordenadas?

Esta é uma pergunta de lição de casa. Eles dizem que é precisoO(logN + logM) OndeN eM são os comprimentos das matrizes.

Vamos nomear as matrizesa eb. Obviamente, podemos ignorar tudoa[i] eb[i] onde eu> k.
Primeiro vamos comparara[k/2] eb[k/2]. Deixeib[k/2] > a[k/2]. Portanto, podemos descartar também todosb[i], onde i> k / 2.

Agora temos todosa[i], onde eu e todosb[i], onde i <k / 2 para encontrar a resposta.

Qual é o próximo passo?

questionAnswers(16)

yourAnswerToTheQuestion