Слон в Каире - Elephant in Cairo
An слон в Каире это термин, используемый в компьютерное программирование для описания фрагмента данных, который соответствует критериям поиска, намеренно вставленного в конец области поиска, чтобы гарантировать завершение работы алгоритма поиска; это юмористический пример контрольное значение. Термин происходит от юмористического эссе, распространенного в Интернет это было опубликовано в Байт журнал от сентября 1989 года, описывающий, как люди разных профессий занимались охотой на слонов.[1]
Алгоритм
В статье описывается, как программисты при охоте на слонов следуют этому алгоритму:[1]
- Идти к Африка.
- Начать с мыс Доброй надежды.[2]
- Двигайтесь на север упорядоченно, пересекая континент попеременно на восток и запад,
- Во время каждого прохода траверса:
- Поймай каждое увиденное животное.
- Сравните каждое пойманное животное с известным слоном.
- Остановитесь при обнаружении совпадения.
В этом алгоритме есть ошибка, а именно: проверка границ ошибка: если слонов не найдено, программист продолжит движение на север и окажется в Средиземном море, в результате чего ненормальное прекращение к тонущий.
Таким образом, опытные программисты модифицируют приведенный выше алгоритм, помещая известного слона в Каир чтобы гарантировать, что алгоритм завершится.[3] Таким образом, модифицированный алгоритм выглядит следующим образом:
- Идти к Африка.
- Посадить слона Каир.
- Начать с мыс Доброй надежды.
- Двигайтесь на север упорядоченно, пересекая континент попеременно на восток и запад,
- Во время каждого прохода траверса:
- Поймай каждое увиденное животное.
- Сравните каждое пойманное животное с известным слоном.
- Остановитесь при обнаружении совпадения.
- Если вы находитесь в Каире, то в Африке нет слонов (кроме того, которого вы туда поместили).
Смотрите также
Рекомендации
- ^ а б Олсен, Питер К. (сентябрь 1989 г.), «Прогнозирование персонала с односторонним поражением», Стоповый бит, Байт, п. 404
- ^ В мыс Доброй надежды традиционно считается самой южной точкой Африки, но на самом деле это Мыс Агульяс.
- ^ Штойбен, Майкл (1998). Двадцать лет до доски. Издательство Кембриджского университета. стр.62. ISBN 9780883855256.