C ++:

чера задали следующий вопрос:

Рассмотрим массив Java или C ++, скажемX который отсортирован и нет двух элементов в нем одинаковы. Как лучше всего найти индекс скажемi такой, что элемент по этому индексу такжеi, То естьX[i] = i.

В качестве разъяснения она также привела мне пример:

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

      Answer is 3 as X[3] = 3.

Лучшее, что я мог подумать, - это линейный поиск. После собеседования я много думал об этой проблеме, но не смог найти лучшего решения. Мой аргумент: элемент с обязательным свойством может быть где угодно в массиве. Так что это также может быть в самом конце массива, поэтому нам нужно проверить каждый элемент.

Я просто хотел подтвердить от сообщества, что я прав. Пожалуйста, скажите мне, что я прав :)

Спасибо

Ответы на вопрос(12)

Ваш ответ на вопрос