После удаления символа с индексом i
символ, который использовал , чтобы находиться в позиции i + 1
, теперь находится в позиции i
, а символ, который раньше был в i + 2
сейчас на i + 1
.После этого вы увеличиваете i
, поэтому вы смотрите на символ, который раньше был в индексе i + 2
, и пропускаете символ с индексом i+1
.
Простые решения включают в себя итерацию в обратном направлении или выполнениеi--
внутри вашего if
.