3. Сортировка
Создаем порядок
Если слово, которое вы хотите найти, начинается с буквы «а», ищите его в начале данной таблицы, а если с буквы «ф» – ищите ближе к концу. Таким же образом, если слово начинается с буквосочетания «ва», вы найдете его в начале раздела слов на букву «в», а если с буквосочетания «ву» – ищите ближе к концу раздела. И далее следуйте тому же правилу.
Роберт Каудри. Алфавитная таблица (1604)
До того как Данни Хиллис основал корпорацию Thinking Machines и изобрел машину логических связей, он был обычным студентом Массачусетского технологического института, жил в студенческом общежитии и был в ужасе от носков своего соседа по комнате.
В ужас Хиллиса приводило вовсе не несоблюдение гигиены, часто свойственное студентам колледжа. Дело было не в том, что сосед Хиллиса не стирал свои носки. Он их как раз стирал. Проблема заключалась в том, что происходило после.
Молодой человек доставал носок из корзины с чистым бельем. Потом наугад доставал второй. Если носки не оказывались парными, он бросал второй носок обратно в корзину. Этот процесс продолжался до тех пор, пока он не находил пару первому носку.
Итак, при 10 разных парах носков ему приходилось в среднем 19 раз вытаскивать разные носки, чтобы подобрать одну пару, и еще 17 раз, чтобы составить вторую. В общей сложности сосед Хиллиса мог вылавливать по одному носку 110 раз, чтобы собрать 20 пар. Этого было достаточно, чтобы начинающий компьютерный специалист переехал жить в другую комнату.
Сегодня обсуждение техники сортировки носков может пробудить в программистах удивительное красноречие. Вопрос о носках, опубликованный на программистском сайте Stack Overflow в 2013 году, вызвал настоящие дебаты.
«Проблема с носками ставит меня в тупик!» – признался легендарный специалист по криптографии и информатике, лауреат премии Тьюринга Рон Ривест, когда мы заговорили с ним об этом вопросе.
Во время встречи на нем были сандалии на босу ногу.