Как лучше всего проверить в массиве, если в массиве с именем A есть 2 числа X, Y, где X + Y = S. S может быть любым числом (необязательно существует в A).
Я сказал, давайте отсортируем массив, который стоит O (nlogn) для худшего случая , тогда давайте возьмем 2 указателя для первого элемента и еще один указатель на последний элемент.
Начало сравнение если указатель 1 + указатель 2. если результат больше, чем уменьшить указатель 2 на 1. если результат меньше, чем увеличить указатель 1 на 1 ... пока мы не переместимся на все элементы в A.
Сложность по времени: nlogn + n (Худший случай для перемещения в 2 указателя) = nlogn.
есть ли лучшее решение?