Pregunta de la entrevista: busque en la matriz ordenada X el índice i de modo que X [i] = i

Ayer me hicieron la siguiente pregunta en mi entrevista:

Considere una matriz Java o C ++, digamosX que está ordenado y no hay dos elementos en él iguales. ¿Cómo puedes encontrar un índice?i tal elemento en ese índice es tambiéni. Es decirX[i] = i.

Como aclaración, ella también me dio un ejemplo:

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

      Answer is 3 as X[3] = 3.

Lo mejor que pude pensar fue una búsqueda lineal. Después de la entrevista, pensé mucho en este problema, pero no pude encontrar una mejor solución. Mi argumento es: el elemento con la propiedad requerida puede estar en cualquier parte de la matriz. Por lo tanto, también podría estar al final de la matriz, por lo que debemos verificar cada elemento.

Solo quería confirmar por la comunidad aquí que estoy en lo cierto. Por favor dime que tengo razón :)

Gracias

Respuestas a la pregunta(12)

Su respuesta a la pregunta