цикл, пока не будет выполнено определенное условие - PullRequest
0 голосов
/ 28 ноября 2018

С этого сайта https://www.geeksforgeeks.org/lca-for-general-or-n-ary-trees-sparse-matrix-dp-approach-onlogn-ologn/ У меня проблема с этой частью цикла while:

// runs till path 1 & path 2 mathches 
int i = 0; 
while (path[1][i] == path[2][i]) 
    i++; 

Я хочу увеличивать i, пока два элемента массива не будут равны, и я ожидал, что этот цикл будет похож:

// runs till path 1 & path 2 mathches 
int i = 0; 
while (path[1][i] != path[2][i]) 
    i++; 

, потому что я хочу увеличить «i», когда значения не равны, но это не так.Почему проверяется равенство, а не неравенство?Этот цикл смущает мой разум.(Примечание: я запускаю весь код, и он работает.)

1 Ответ

0 голосов
/ 28 ноября 2018

По следующей строке (в вашей ссылке), где возвращается последнее совпадение, я вижу, что ошибка в комментарии.Он должен сказать что-то вроде «работает до тех пор, пока пути совпадают», а не «до».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...