Удалите объект из массива, если он существует в 'запрещенные слова' массив

Рекурсия является соответствующей каждый раз, когда проблема может быть решена путем деления ее в подпроблемы, которые могут использовать тот же алгоритм для решения их. Алгоритмы на деревьях и отсортированные списки являются естественным соответствием. Много проблем в вычислительной геометрии (и 3D игры) могут быть решены рекурсивно с помощью двоичное пространство, делящее (BSP) деревья, толстые подразделения , или другие способы разделить мир на подразделения.

Рекурсия является также соответствующей, когда Вы пытаетесь гарантировать правильность алгоритма. Учитывая функцию, которая берет неизменные исходные данные и возвращает результат, который является комбинацией рекурсивных и нерекурсивных запросов к исходным данным, обычно легко доказать, что функция корректна (или не) использующий математическую индукцию. Это часто тяжело, чтобы сделать это с повторяющейся функцией или с исходными данными, которые могут видоизмениться. Это может быть полезно при контакте с финансовыми вычислениями и другими приложениями, где правильность очень важна.

24
задан Ben Everard 13 November 2009 в 11:41
поделиться

1 ответ

Вы хотите array_diff .

array_diff возвращает массив, содержащий все записи из array1 , которые не присутствует ни в одном другом массивы.

Итак, вам нужно что-то вроде:

$good = array_diff($arr, $disallowed_words);
58
ответ дан 28 November 2019 в 22:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: