카이로의 코끼리

Elephant in Cairo

카이로에서 코끼리는 컴퓨터 프로그래밍에서 검색 알고리즘이 종료되도록 하기 위해 검색 공간의 끝에 의도적으로 삽입된 검색 조건과 일치하는 데이터를 설명하는 데 사용되는 용어입니다. 이것은 센티넬 값의 유머러스한 예입니다. 용어는 1989년 9월 [1]Byte 잡지에 게재된 다양한 직업이 코끼리를 사냥하는 것에 대해 설명하는 재미있는 에세이에서 유래했다.

알고리즘.

이 기사에서는 코끼리를 사냥할 때 프로그래머가 다음과 [1]같은 알고리즘을 사용하고 있습니다.

  1. 아프리카로 가세요.
  2. 희망봉에서 [2]시작하세요.
  3. 질서정연하게 북상하여 대륙을 동서로 가로지른다.
  4. 각 트래버스 패스 중:
    • 보이는 동물을 한 마리씩 잡아라.
    • 잡힌 각각의 동물을 알려진 코끼리와 비교하세요.
    • 일치가 검출되면 정지합니다.

이 알고리즘에는 경계 확인 오류라는 버그가 있습니다. 코끼리가 발견되지 않으면 프로그래머는 북쪽으로 계속 나아가 지중해로 가서 익사함으로써 비정상적인 종료를 초래합니다.

따라서 숙련된 프로그래머들은 알고리즘이 [3]종료되도록 알려진 코끼리를 카이로에 배치함으로써 위의 알고리즘을 수정한다.따라서 변경된 알고리즘은 다음과 같습니다.

  1. 아프리카로 가세요.
  2. 카이로에 코끼리를 두다.
  3. 희망봉에서 시작하세요.
  4. 질서정연하게 북상하여 대륙을 동서로 가로지른다.
  5. 각 트래버스 패스 중:
    • 보이는 동물을 한 마리씩 잡아라.
    • 잡힌 각각의 동물을 알려진 코끼리와 비교하세요.
    • 일치가 검출되면 정지합니다.
  6. 만약 당신이 카이로에 있다면, 아프리카에는 코끼리가 없다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ a b Olsen, Peter C. (September 1989), "Pachydermic Personnel Prediction", Stop Bit, Byte, p. 404
  2. ^ 희망봉은 전통적으로 아프리카의 최남단으로 여겨져 왔지만, 그것은 사실 아굴라스 곶이다.
  3. ^ Steuben, Michael (1998). Twenty Years Before the Blackboard. Cambridge University Press. pp. 62. ISBN 9780883855256.

외부 링크