Хакни рутину. Как алгоритмы помогают справляться с беспорядком, не тупить в супермаркете и жить проще - [17]
Две другие нотации, которые дополняют большую тету и оперируют при тех же условиях, – большая омега и большая о. Большая омега устанавливает нижнюю границу функции для достаточно большого значения n, то есть она говорит, что наша функция может расти не медленней, чем ее нижняя граница. Большая о определяет верхнюю границу функции для достаточно большого значения n, то есть говорит о том, что наша функция может расти не быстрее, чем верхняя граница. Конечно, в действительности функция может расти медленней, чем верхний предел и, таким образом, быть более привлекательной, но большое о – пессимист и воплощение закона Сода.[41]
Когда мы говорим о скорости роста алгоритма, мы имеем в виду его действенность в худшем случае, когда он тесно связан, по оценке большой теты. Заметьте, что любой уровень скрытности, двуличия, обмана, который мы допускаем в этой книге, порождает компромисс. Важно знать, что в реальности больше нюансов, чем в теории, – об этом можно прочитать в источниках, перечисленных в конце книги. Что касается Людвика, то различия в двух алгоритмах очевидны, что делает решение его проблемы достаточно легким.
11
Заполни полки
Терри учится на втором курсе престижного вуза Medlock High в Беверли-Хиллз (Калифорния). Он наказан (оставлен после занятий) за затеянную на лекции по социологии провокационную дискуссию на тему «Не во всем должны быть авокадо и капуста». В качестве воспитательной меры куратор отправил Терри в школьную библиотеку и велел выставить книги на только что купленную полку. Старая полка недавно обрушилась, и около 250 книг оказалось на полу. Все, что нужно сделать второкурснику-бунтарю, – выстроить книги на полке в алфавитном порядке по фамилиям авторов. Терри собирается вечером сходить в кино с друзьями и не хочет застрять в университете до полуночи. Ему удастся все сделать, но нельзя терять ни минуты.
ЦЕЛЬ: ВЫСТАВИТЬ ВСЕ КНИГИ НА ПОЛКУ В АЛФАВИТНОМ ПОРЯДКЕ.
МЕТОД 1: ВЗЯТЬ КНИГУ И ПОСТАВИТЬ ЕЕ НА ПОЛКУ. ВЗЯТЬ ДРУГУЮ И ПОСТАВИТЬ ЕЕ ПЕРЕД ИЛИ ПОСЛЕ ПЕРВОЙ, В ЗАВИСИМОСТИ ОТ ФАМИЛИИ АВТОРА. И ТАК ДАЛЕЕ.
МЕТОД 2: ИСПОЛЬЗОВАТЬ КНИЖНЫЕ ДЕРЖАТЕЛИ, ЧТОБЫ ОСТАВЛЯТЬ МЕСТО ПОСЛЕ КАЖДОЙ БУКВЫ АЛФАВИТА, ЗАТЕМ СТАВИТЬ КНИГИ, ПЕРЕМЕЩАЯ ДЕРЖАТЕЛИ ПО МЕРЕ НАДОБНОСТИ.
Давайте вначале решим, как Терри может поступить с заданием. Мы видели в главе 15, что подходы к сортировке, которые строятся на сравнении смежных элементов и определении, какой из них больше, а какой меньше, занимают квадратичное время. Мы говорили, что примеры такого подхода на практике включают в себя сортировку вставкой, сортировку выбором и пузырьковую сортировку и что все они работают, используя образец с минимальными различиями. Метод 1 Терри – это тот же подход, что и метод 1 Чарли из главы 5.
Здесь интересно, что усовершенствованный метод Терри не останавливается на алгоритме разбивания, как в случае с Чарли. Он модифицирует оригинальный алгоритм квадратичного времени. Это происходит при внедрении относительно простой инновации. Если мы возьмем такой алгоритм, как сортировка вставкой, мы обнаружим, что самым медленным действием будет помещение элемента на правильное место. Каждый раз после того, как мы делаем это, приходится менять расположение всех последующих элементов, передвигая их один за другим.
Что происходит при применении метода 2 Терри? Он заранее учитывает эти сдвиги, создавая пустые пространства по всей длине полки через равные промежутки. Найдя нужное место для вставляемой книги, Терри, вероятнее всего, передвинет лишь несколько других книг. Чем больше и шире эти свободные пространства, тем меньше книг ему придется сдвигать каждый раз.
Эта модернизация метода сортировки путем вставки ведет от алгоритма квадратичного времени к линейно-логарифмическому «с высокой вероятностью», как выразился его автор, и называется библиотечной сортировкой. Вспомните идею из главы 10: расставление книжных держателей по полке может сделать этот подход медленнее, если книг мало, но при их достаточно большом количестве он обладает преимуществом перед альтернативным алгоритмом.
Вот как два этих подхода выглядят на графике:
Возможно, мы лучше поймем выигрышность этого подхода, рассмотрев альтернативный, чуть более ограниченный сценарий. Вот какую мрачную картину рисуют авторы библиотечной сортировки: технологическая индустрия накрылась медным тазом, мир устал от ее глупых идей. Тысячи уволенных работников нашли убежище в некоем месте, где применяют свои таланты в обмен на бесплатную пиццу с приправами. Приток специалистов привел в восторг университеты по всей стране. Все рады, кроме архивариуса в том самом колледже. Да, пятнадцать лет назад его звали Терри. Он заведует полками с ячейками, которые промаркированы именами всех выпускников кафедры, расположенными в алфавитном порядке, и затем двигает поверх всех остальных лейблов один.
Теперь, когда частота движения ячеек достигла космической скорости, Терри вспомнил об алгоритме, который он применял когда-то в школе. Он признает, что подобный подход поможет снизить его стресс за счет высвобождения свободного пространства. И вот он создает пустые кармашки между занятыми ячейками.
Мы все критиковали свою страну – СССР. Критиковали, как дети критикуют действия своих родителей.После того, как на место бывших социалистических систем пришли капиталистические, люди вкусили эти «прелести». И сейчас многое ранее далекое стало до ужаса близко. До этого нам не с чем было сравнивать. Мы выросли под спокойным крылом позднего социализма и думали, что «где-то там» лучше. Мы думали, как перестроить здание, а снесли фундамент, основу.И вот сейчас мы, люди, пожившие в разных системах, представляем бесценный опыт для мировой мысли устройства лучшего общества.Я думаю, что спор о социализме не окончен.
У каждого человека есть мечта, заветное желание, а то и не одно. Но задумываемся ли мы о том, сколько нам необходимо для счастья или что именно нам нужно, чтобы чувствовать себя абсолютно счастливыми? В материальном плане все очень даже просто: нам необходимо ровно столько, сколько получится, если все наши материальные мечты и желания перевести в денежное выражение, то есть попросту подсчитать, сколько стоят те или иные вещи, которые ну просто очень, как нам кажется, нам нужны. Зачастую ощущение их нужности проходит само собой сразу, как только удается их заполучить, и оказывается, что не так уж они были и нужны и не настолько они делают тебя счастливым, как ты того ожидал.
Психолог помогает человеку найти и эффективно использовать душевные силы, чтобы преодолеть трудности внешней жизни и выдержать жизненные испытания.А если человек не готов прийти на прием к психологу?В этой книге описаны темы обыденной жизни, которые чаще всего поднимаются в кабинете психолога, и даны ответы на вопросы:– что можно делать, чтобы предупредить возникновение и развитие психологических проблем,– как справиться с возникшими проблемами без посторонней помощи.В приложение вынесены простые и популярные упражнения, которые помогут читателю самостоятельно продвинуться в решении проблем и тренировке нужных для преодоления трудностей качеств.
«Разговоры в песочнице» — книга про то, каково быть современной молодой мамой в России. Она про внутренний мир тех, кто ежедневно втаскивает коляску в подъезд разной степени оборудованности для этих целей. Про чувства качающих качели. Про переживания сидящих в очереди к педиатру. Про тех, чьи дети еще не ходят в детский сад, и даже вообще еще не ходят, и кто — по тем или иным причинам — проводит дома большую часть своего времени.
Учитывая мнение читателей предыдущих двух книг из предполагаемой серии "Практическая психология для всех", автор ставит цель — помочь людям осознать и изменить неудачные, малоэффективные модели поведения, дать им средства психологического анализа и саморегуляции, научить их, как сделать свою собственную жизнь и жизнь своих близких счастливой, на примере разных судеб четырех женщин.Книга доступна и интересна для всех, кто стремится к благополучию, успеху и процветанию и ищет средства достижения этого.
Работы Рихарда Давида Прехта, написанные на стыке психологии и философии, переведены на 25 языков, изданы суммарным тиражом более миллиона экземпляров, вошли в списки бестселлеров всех европейских стран.Психология любви.Одна из самых распространенных тем в мировой философии.Так почему же книга Рихарда Давида Прехта, написанная на эту «избитую» тему, продается огромными тиражами и пользуется колоссальным успехом во всей Европе?Что, по его мнению, представляет собой это чувство — самое яркое из всех, что доступно человеку?
Вы когда-нибудь испытывали жгучие приступы зависти к блогерам, знакомым, друзьям или даже близким? С развитием социальных сетей, созданием «личных брендов» и видимости идеальной жизни зависть превратилась в эпидемию, которая разрушает нас и наши контакты с людьми. Но поверьте – это можно исправить! Люси Шеридан, первый в мире консультант о преодолении зависти, доступно и позитивно рассказывает о том, как справиться с пагубной одержимостью чужим мнением, перестать вести мысленное соперничество с другими и расстраиваться из-за людей, которые в чем-то успешнее вас.
Наверное, для вас не станет открытием, что «каждый из нас уникален». Ведь это утверждение давно закрепилось в вашем сознании. Настолько крепко, что вы зачастую забываете о нем либо не воспринимаете его всерьез. Перед вами книга, которая заставит вас поверить в себя! Автор убежден, что для этого потребуется всего 6 минут в день. Разного рода упражнения помогут читателю разобраться в себе и очистить свое сознание от всего лишнего; научат самоуважению и поднимут самооценку. Единственное условие, которое необходимо соблюдать, – постоянство.
Синдром самозванца – относительно новое, но весьма распространенное явление, которому подвержены как молодые, так и пожилые мужчины и женщины, всемирно известные личности, карьеристы и обычные люди, считающие себя плохими партнерами, родителями или друзьями. К сожалению, все мы в тот или иной период времени перестаем верить в собственные силы и компетентность, что, в свою очередь, сказывается на нашей учебе, работе или отношениях. Эта книга – первый шаг в борьбе с низкой самооценкой. Представленные в ней результаты научных исследований, тесты и примеры из психологической практики помогут осознать причины неуверенности в себе, а конкретные методики и эффективные советы позволят избавиться от нее навсегда.
У каждого есть Предназначение. Не следовать ему – самое большое преступление. Отсутствие четкого понимания своего пути делает людей несчастными и бедными. Александр Рей – практикующий психолог и просто счастливый человек. Он написал книгу-тренинг «Предназначение» для того, чтобы без пустых теорий и рассуждений помочь вам осознать свою миссию и немедленно приступить к ее осуществлению.