Pergunta da entrevista - Pesquise na matriz classificada X o índice i de modo que X [i] = i

Foi-me feita a seguinte pergunta em minha entrevista ontem:

Considere uma matriz Java ou C ++, digamosX que é classificado e não há dois elementos iguais. Qual a melhor forma de encontrar um índice, digamosi de modo que o elemento nesse índice também sejai. Isso éX[i] = i.

Como esclarecimento, ela também me deu um exemplo:

      Array X : -3 -1 0 3 5 7 
      index   :  0  1 2 3 4 5

      Answer is 3 as X[3] = 3.

O melhor que pude pensar foi uma pesquisa linear. Após a entrevista, pensei muito neste problema, mas não consegui encontrar uma solução melhor. Meu argumento é: o elemento com a propriedade necessária pode estar em qualquer lugar da matriz. Portanto, também pode estar no final da matriz, portanto, precisamos verificar todos os elementos.

Eu só queria confirmar da comunidade aqui que estou certo. Por favor me diga que estou certo :)

obrigado

questionAnswers(12)

yourAnswerToTheQuestion