Скажем, у вас есть 2D-сетка с каждым пятном на сетке, имеющей x количество объектов (с x >= 0). У меня возникли проблемы с рассмотрением алгоритма clean, так что, когда пользователь указывает координату, алгоритм находит ближайшую координату (включая указанную) с объектом на ней.
Для простоты предположим, что если 2 координаты будут на одном и том же расстоянии, будет возвращено первое (или если ваш алгоритм не работает таким образом, то последний, не имеет значения).
Изменить: координата, которая равна 1, должна быть 1 вверх, вниз, влево или вправо. Координаты, которые находятся по диагонали, равны 2.
Как примечание, какая отличная бесплатная онлайн-ссылка для алгоритмов?