412 000 произведений, 108 200 авторов.

Электронная библиотека книг » Seva Soth » Ретро бит 5 (СИ) » Текст книги (страница 14)
Ретро бит 5 (СИ)
  • Текст добавлен: 6 июля 2026, 17:30

Текст книги "Ретро бит 5 (СИ)"


Автор книги: Seva Soth



сообщить о нарушении

Текущая страница: 14 (всего у книги 15 страниц)

Глава 25

– Курва! – воскликнула Линда, когда я пересказал ей ситуацию. – Нельзя это так оставлять! Только что звонила Глория, они с Лео закончили все дела в Лос-Анджелесе и готовятся переехать в Эль-Серрито, поближе к своим клиентам. К нам и группе. Собираются открыть адвокатский кабинет. Подай на Стерлинга в суд!

Ох ты ж моя прелесть. Сколько решимости. Очень многие девушки особенно хороши в гневе, яркие эмоции как будто подсвечивают их изнутри.

– Сэм утверждает, что это не сработает, но я поговорю с Лео. Обязательно. Мне в любом случае нужно будет посоветоваться с ним по поводу того, что я собираюсь сделать и закрепить за собой авторство юридически.

– Крис, а что ты собираешься сделать?

– Растоптать одного жадного пендехо.

О Лунная призма, дай мне пофигизма! Внутри меня всё так и клокотало. Хотелось взорваться и кого-нибудь ударить. Не дома, безусловно. Мне срочно нужен файтинг! Внутри игры агрессию выплескивать и безопаснее, и продуктивнее. Увы, Мортал Комбат на технологиях нынешней пещерной эпохи невозможен. И как жаль, что до рабочего билда «Темпл ран 2» еще месяцы труда. Спокойствие, только спокойствие, как говорило одно привидение с мотором.

От выплеска эмоций спасли обнимашки. Линда тоже вся дрожала от возмущения, но наши вибрации погасили друг друга, а затем перешли в что-то более интересное и приятное, пусть и все еще чуточку незаконное. Отпустило нас нескоро, к тому моменту кое-то слегка спину мне расцарапал острыми коготками. И это я не про кошку.

– Так что ты собираешься сделать? – прозвучал повторный вопрос, когда нас обоих уже отпустило.

– Мне этот алгоритм ничего не стоил и выгоду от него я получать не планировал, но позволишь себя безнаказанно ограбить один раз – и каждый начнет считать тебя левасом, чей труд легко присвоить. Для начала я познакомлюсь с профессором Стерлингом. «Знай своего врага» – говорил Сунь Цзы. Второе, о чем размышляю – написать свою статью и отправить в мейнстримовые журналы. В Байт, Compute!, Электроник Геймс. Быстро ее не напечатают, но я попрошу указать дату моего обращения. Уважаемый профессор ворует материалы из популярных изданий – это скандал. Жаль, я идиото и заранее про что-то подобное не подумал.

– Может быть, посоветоваться с Рокки… Возняком, – предложила Линда.

– Я знаю, что он посоветует. Не концентрироваться на обиде и придумать что-то новое, более крутое. Так и собираюсь сделать. Третья часть плана моей мести в том, что я пойду на конференцию и задам профессору несколько вопросов о его понимании быстрой сортировки. Пусть покажет, чего он стоит. У меня есть парочка серьезных улучшений для алгоритма. Жаль, запатентовать их не позволят. Но, как минимум, свою их реализацию я в патентное ведомство отправлю.

Ночь прошла, настало утро ясное. Солнце взошло и разогнало мои мрачные мысли. Никакой катастрофы ведь. Просто очередная легкая зуботычина от судьбы, чтобы не расслаблялся. Сколько раз мне еще нужно попасть в неприятности, чтобы не забывать истину с советского пропагандистского плаката «Не болтай»?

Очень кстати с улицы послышался шум автомобильного двигателя. Несколько раз радостно гавкнул Дюке, приветствуя «своих». Удивительно, как я научился на слух различать интонации собачьего лая.

Из угловатого Бьюика вышел Лео и по-джентльменски открыл дверь для Глории. Я аж умилился тому, как парикмахерша выдрессировала адвоката.

– Вот и мы, ребята, – с широкой улыбкой поздоровался Больцман. – Новый этап жизни. Больцман и партнеры захватывают север штата.

– Лео, у меня уже есть работа для тебя.

Вместо приветствия я вывалил на юриста и его помощницу всю ситуацию с плагиатом.

– Мой совет тебе не понравится, пацан. Забей и живи дальше, – предложил адвокат, – у нас нет никакой аргументации. Профессор скажет, что его так восхитил твой алгоритм, что он решил рассказать о нем миру. Он же нигде не присваивает себе авторство. Кроме как авторства статьи, написанной не тобой. Я верно понял?

– Вопрос принципа, – надулся я несколько по-детски. – Хочу утереть вору нос. У меня есть гибридный алгоритм, работающий лучше.

Интросорт – стабильный и современный промышленный стандарт, использующий на разных этапах своей работы быструю, пирамидальную и сортировку вставками. Если уж джулайсорт заметным событием оказался, то августасорт ее затмит… или линдасорт? Для совершенного автомобиля название в честь идеальной девушки. А если дюкесорт? Все же невеста у меня скромница, а питбуль заслужил благодарность.

– Пацан, не умничай. Для нормального человека вроде меня «гибридный алгоритм» звучит примерно так же, как световой меч или бластер. Спокойно и без суеты готовь описание того, что ты придумал. Мы запатентуем. Верховный суд США запретил патентование алгоритмов, но мы подадим заявку на методику упорядочивания данных в компьютере. Главное – подать не как голую математику, а как рабочий физический процесс. Готов заплатить поверенному?

– Скорее всего.

Еще вчера я бы ответил решительное «да», но сегодня пара тысяч баксов за патент начала казаться мне аргументом. И моё согласие прозвучало неуверенным. Хотя… не корову проигрываю. Если получится, то лицензирование интросорта, использующего сразу три вида сортировки, сможет меня долго еще кормить. Или нет. Патентный троллинг – штука мерзкая, да еще и желающие через суд доказать, что речь идет об алгоритме, наверняка найдутся.

– Тогда готовь документацию, пацан. Миссис Флорес, нам пора. Агент по недвижимости пообещал показать нам дом, подходящий и как жилище, и как рабочее место.

Глория, о чем-то тихонько болталавшая с Линдой, кивнула и «Больцман и Флорес» уехали.

И, несмотря на то, что меня вроде как отпустило, я сел в лоурайдер и поехал в универсисет – в гости к Аластеру Кроуфорду, прихватив текст «Мы выпьем кровь», дабы порадовать старика.

Принял доктор литературы меня почти сразу, едва Селеста доложила, кто хочет его видеть.

– Я слышал, вы записались на занятия к Джулиану Макмахону. Я очень далек от его нынешнего курса, но вам будет полезным узнать разные стороны творчества, – начал беседу профессор. – В ранние годы Джулиан писал отличные театральные пьесы, пока не увлекся кинематографом.

– Он называл вас своим другом, сэр.

– Так и есть. Я оказал его таланту некоторую протекцию и помог устроиться на кафедре.

– Не взглянете на мои новые стихи? Не перебарщиваю ли я с поднятыми темами?

Профессор вчитался. Поначалу с легким скепсисом, но постепенно выражение лица менялось, а брови ползли вверх.

– Вижу, вы развернулись от южной готики в сторону классики Брэма Стокера. Это чистейший готический ужас на стыке божественного и инфернального! – воскликнул он. – Это Данте, спускающийся в Бездну, это падение Люцифера у Милтона! Аллюзии на крестовые походы – это же гениальная игра с теологическим концептом транссубстанциации!

Мне прямо неловко стало. Я в ворованной песне никакой транс… чего-то там не замечал. Да сомневаюсь, что и сами Повервульф вкладывали в крутую композицию о вампирах что-то сильно большее. Хотя, может быть, и ошибаюсь. Очень многие музыканты получили отличное гуманитарное образование.

– И вы отдадите прекрасную готическую поэму вашим друзьям рокерам, юноша? – с укоризной взглянул на меня профессор.

– Уже отдал, сэр. Извините, но я писал текст специально для них. Вам стоит познакомиться с ребятами. Но вообще-то я по иному поводу. Академическая среда ведь компактна. Что скажете о докторе Брендоне Стерлинге? У меня с ним наметились трения.

– Поэтам вроде вас нечего делать в технарском болоте, мальчик мой. Зачем вы растрачиваете себя на бездушные железки, обладая литературным даром? Публично критиковать коллегу – верх неэтичности. Однако я сообщу вам немного общеизвестных фактов – существует отдельная порода академиков, которым важна не чистая наука, а денежные гранты. В технологической среде такие встречаются чаще всего. У мистера Стерлинга с Беркли пожизненный контракт и университетская бюрократия будет защищать его до последнего. Воздержитесь от любых споров с ним. Ни одна жалоба от человека без академического статуса не возымеет действия. Пишите лучше стихи.

– Подумаю об этом, сэр.

Попрощавшись с литератором и Селестой, получившей копию «Мы выпьем кровь», я отправился в Эванс Холл – взглянуть на антагониста лично.

– Сэм, привет, – отыскал я аспиранта Гарланда, примерно представляя, где он ведет занятия.

– Привет. Отошел после вчерашнего стресса? – хлопнул он меня по плечу. – Я подал заявление на перевод. Завтра у вас лекцию по Си придет читать другой преподаватель. Есть шанс, что сам мистер Стерлинг, если замену не найдут.

– Сэм, а где мне его найти? Профессор Стерлинг читает какие-то лекции сам? – «Знай своего врага». Сунь-Цзы ерунду советовать не стал бы. А потому, прежде чем идти и задавать каверзные вопросы, следует посмотреть, насколько вообще хорош оппонент, как оратор. Своего аспиранта он морально задавить смог легко, почти до истерики довел.

– Через пару часов у него лекция по эффективному распределению памяти в Кори Холл, аудитория 135, вход свободный. Да, еще – знакомые принесли мне программу стэнфордской конференции. Прямо перед Стерлингом выступает сам Дональд Кнут. Ты ведь знаешь, кто это?

– Все знают. Высказывание «Преждевременная оптимизация – корень всех зол» – буквально мой девиз. Теперь я обязан там побывать.

Если что, Кнут не предлагал писать неоптимальный код. Он призывал разумно распределять человеческие ресурсы программиста.

Невозможно заниматься компьютерами и не познакомиться с, опять это слово, легендарным Кнутом. Он без малого создал современную информатику, автор монументального труда «Искусство программирования», обладатель премии Тьюринга, один из авторов алгоритма поиска по тексту, через который и в 2026 работает Ctrl-F, создатель типографской программы TeX, из которой потом вырос LaTeX, ставший стандартом для ученых, а количество его математических открытий неизмеримо. О великий Ктулху, если Стерлинг завтра извинится и конфликт себя исчерпает – я всё равно обязан пойти на конференцию и увидеть одного из величайших людей столетия в расцвете сил. Без малейшего сарказма! А может, мне стоит в Стэнфорд поступить и в ученики к Дональду Эрвиновичу записаться?

Но боюсь, совсем разные у нас жизненные ценности окажутся. Я – неплохой практик, Кнут – один из величайших теоретиков. Нет, не крутился в академической элите – нечего и начинать. Но увидеть легенду и, может быть, заполучить его знаменитый в узких кругах чек на $2.56 хочется. Великий математик свои чеки за найденные ошибки и опечатки в его книгах раздаёт. Скорее всего, услышав про игры, он сочтет их баловством и в мягкой форме предложит мне повзрослеть.

При помощи карты на информационном стенде и добрых людей отыскал тот самый Кори Холл – внешне я бы его с российской поликлиникой сравнил. Четырехэтажное здание с рублеными формами.

Найдя заранее нужную аудиторию, я не стал терять время и набросал на листочке черновик дюкесорта. Увы, компилятора Си в голове у меня нет, и даже линтер не установлен, но вроде как все правильно написал, с переключением на пирамидальную сортировку, когда рекурсия залезла слишком глубоко, и на упорядочивание вставками для маленьких хвостовых массивов. Доберусь до компа – наберу и испытаю, и техническое описалово сделаю.

К началу занятия аудитория заполнилась приличными юношами из хороших семей – в том смысле, что белыми с примесью парочки азиатов. Никаких женщин и латиноамериканских каналий. В мою сторону смотрели с удивлением, но претензий никто не высказал и то неплохо.

Последним явился лектор и закрыл входную дверь на задвижку. Он думает, что это он студентов с собой запер. А на самом деле наоборот, себя со мной.

– Опоздавшие, как обычно, не допускаются. Записывайте…

Голос у Стерлинга оказался скрипучим, прокуренным. Собственно, он, никого не стесняясь, задымил прямо во время лекции, стряхивая пепел в пепельницу. Особенно пристально я препода взглядом не сверлил, но к концу академического часа рассмотрел хорошо. Невысокий, плотный, но не толстый, с бульдожьими щеками и сохранивший удивительно много аккуратно зачесанных на пробор волос, совершенно седых. Одет в безупречную серую тройку.

Материал наглый похититель интеллектуальной собственности читал банальный и скучный. И я даже не придираюсь потому что он мне не нравится. На самом деле скучный.

Память надо экономить. Не экономить память не надо. Кучу – пространство динамической памяти – нужно беречь от внешней фрагментации. Не беречь кучу от фрагментации нельзя. Cборщик мусора – академическую блажь мы оставим для ленивых фантазеров. За утечки памяти положены расстрел и порицание.

И оратором бульдог Стерлинг оказался плохим. Я придираюсь, но даже в мистере Джонсоне с его красной угрозой имелись энергия и харизма. Общеизвестно ведь, что выступление лучше начинать с шутки, как и заканчивать. Ни единой попытки понравиться аудитории. Если бы не личное неприязненное отношение к докладчику, я бы на его выступлении захрапел.

– Хорошо запомните сегодняшнюю лекцию, материал будет в билетах на экзамене.

И ушел по-английски, не прощаясь. Тут я, пожалуй, с ним даже солидарен. Необходимость пожать руку каждому коллеге в офисе, когда уходишь домой, меня всегда раздражала. А пропустишь кого – всё, проявил неуважение, вы больше не друзья.

Больше у меня дел в Кори Холле и вообще кампусе не оставалось. Ну разве что Рокки найти и позвать посмотреть на Кнута. Мне кажется, Воз оценит выступление великого математика. Но потом, не сейчас, а сейчас я хочу убедиться, что все правильно придумал.

Из крыла, где парни устроили себе репетиционную, уже звучали аккорды «Мы выпьем кровь». Пока не очень мощно, даже робко, но узнаваемо. И что особенно приятно, к привычным гитаре, барабанам и синтезатору звук Коммодора прибавился – такой, вопиюще электронный бас, пока не особенно красивый. Но с каждой итерацией он становился чуточку лучше. Освоить новый инструмент не так просто, у Томми еще долгий путь.

Линда рисовала векторную эротику, Бренда просчитывала очередной показатель виртуальной экономики, Монти на занятиях в университете. Идиллия.

– Ну, какие новости? – взволнованно спросила моя девушка, оторвавшись от планшета, точно такого же, как у Роберты Уильямс, между прочим. Ее прелесть.

– Отличные. Перед выступлением Стерлинга я смогу взять автограф Дональда Кнута.

– Кого? – переспросили обе девушки сразу.

Стена непонимания. Пришлось устроить небольшую лекцию о величии человека, сравнившего программирование с поэзией и придумавшего современный подход к оценке эффективности алгоритмов.

А далее я сел за комп, открыл редактор кода и выпал из реальности. Остались только я, Си и два в шестнадцатой способов отстрелить себе конечности. Вынырнул из состояния потока, когда за окном уже стемнело, Бренда ушла домой, а Линда принесла мне на ужин макарошки, приготовленные Селестой. Раминь!

Но зарелизить сам алгоритм и убедиться, что он не производительней обычного квиксорта – половина дела. Нужно подготовить тесты, множество тестов, доказывающих, что дюкесорт абсолютно стабилен на любых данных и не сваливается в бесконечную рекурсию там, где джулайсорт поднимает лапки кверху, например, на предварительно отсортированном массиве.

Ночь, она опять звала меня. Я попросту не засну, пока не покрою код тестами и не убежусь, что всё работает, как задумано, на разных наборах данных, подходящих под критичные случаи. Ктулху, может быть, и спит, а мне некогда.

Глава 26

Внутренняя злость меня отпустила утром следующего дня, когда я, вынырнув из состояния потока, нашел Линду спящей на диванчике в рабочем кабинете. От планов утереть нос Стерлингу не отказался, но уже с другой мотивацией. Не потому, что тот сплагиатил у плагиатора, а чтобы в целом желание обкрадывать людей у профессора отбить.

Еще перед Дюке стыдно стало. Не потому, что не спросил у него разрешения по поводу герцогской сортировки, а из-за того, что я даже не знаю, кто с ним вчера вечером гулял. Линда, скорее всего, они с питбулем очень хорошо подружились.

Две недели пролетели, как один миг. Код, тесты, написание собственной статьи, по шаблону Сэмовой, но понятным языком и без лишней воды. Много раз мануалы писал и привык всё упрощать. Хотя, признаться, не очень люблю это дело. Пришлось в библиотеку съездить и Кнута почитать, по поводу оценки эффективности, чтобы все хотя бы по минимуму академических стандартов оформить. Ни о чем не жалею.

С юридической стороны, как только возможно моё авторство закрепили. Даже засняли на видеокамеру, как я читаю вслух свою же работу. Это, скорее всего, лишнее, но в библиотеку Конгресса Лео и тексты и пленку отправил. Патенты я пока решил придержать. Ну мерзко это, алгоритмы патентовать! Не зря верховный суд запретил. А то, что можно извернуться, убрав слово «алгоритм» из формулировки, ничего не меняет.

В означенную субботу 23 октября мы с Линдой сели в тойоту и поехали в кампус Стэнфордского университета. Следом за нами выдвинулись Монти с Селестой, «Бесконечность тьмы» и севшие в тот же фургон Рамон с Брендой. И Рокки пообещал явиться.

Стэнфорд мне очень понравился, как в декорациях для исторического кино оказался. Башенки, черепица, колонны и портики, желтый песчаник. Колониальный такой стиль, причем все постройки в едином ключе выдержаны. Мой внутренний перфекционист аж возликовал от эстетического экстаза.

Еще и площади гигантские. Беркли, оказалось, территориально маленький в сравнении с еще одним знаменитым университетом. Потому и сделали самые новые корпуса большими человейниками, чтобы меньшие площади отыграть. А в Стэнфорде повсюду велосипедисты рассекали. Как в Голландии или азиатских странах, где я путешествовал при помощи ютуба. Воздух чистый, никакого смога. Зеленые парки вокруг университетских корпусов. И что я в этом душном логове плагиаторов, плотно встроенном в городскую среду, вообще позабыл? Хотя… кто сказал, что надо искать сотрудников только в одном универе? Вот сейчас как блесну выступлением и отсюда люди тоже подтянутся. Правда, сложилось впечатление, что студентов здесь в разы меньше. Может быть, из-за громадной территории.

Нам – мне и всем знакомым – пришлось основательно поработать ногами от парковки, пока не добрались до аудитории Тьюринга – большого амфитеатра. Для себя, Линды и моих сотрудников я статус участников заранее проплатил, отправив чек по почте. Группа, принявшая решение спонтанно, оплатила по двадцать баксов с носа при входе.

Зашли, послушали первого спикера, не самого хорошего оратора с неплохим докладом об алгоритмах поиска пути – очень полезной темы для геймдева. Его бы тоже стоило послушать всем моим сотрудникам и мне самому, хотя бы ради того, чтобы я сделал себе зарубку уделить время теме. В докладе поднималась извечная тема – экономия ресурсов, а именно – памяти. И мне есть, что сказать по данному вопросу. Алгоритм поиска пути по опорным точкам из 2011-го я криво-косо, но помню.

Докладчик предложил задавать вопросы и прозвучало несколько вежливых и не особенно интересных уточнений. Даже жалко стало этого доктора Перкинса из Стэнфорда – пусть ораторское мастерство ему и не дано, темы он поднял важные.

А далее на трибуну вышел круглолицый дядечка слегка за сорок. В больших очках, с глубокими залысинами, одетый в простую бежевую рубашку и серые брюки, даже без галстука. Похожий внешне на главу семьи Таннеров из сериала Альф.

– Здравствуйте, меня зовут Дональд Кнут и я программист, – начал он с шутки.

Сколько же в этом человеке научной харизмы. Великий ученый стартовал своё выступление и я как отрубился, растворился в доводах и тезисах. Еще и тема, как на заказ, интересная оказалась – алгоритмы выравнивания текста для наилучшего расположения на странице. Строки, абзацы, кегли, система Метафонт для генерации шрифтов. Всё то, с чем он столкнулся при разработке типографского «Ти-Экса». Точнее, сегодня я узнал, что правильно говорить «тех», со звуком «ха» в конце.

– Я ничего не понял, но этот чувак нереально круто говорит, – шепотом высказался Эдди, когда возникла небольшая пауза – докладчик решил попить воды. – Так и хочется дослушать, а потом перед тыковкой выпендриться – типа я умный и научные слова знаю.

Группа вела себя тихо и смирно, оделись ребята более-менее прилично, в чистые рубашки. И никто их не узнал. Вполне типичные молодые студенты, среди тех тоже встречаются патлатые и бородатые.

И, наконец, настал важный момент.

– Сейчас я готов ответить на абсолютно любые ваши вопросы, – произнес математик.

Я решительно встал в очередь к микрофону. И, что удивительно, вслед за мной пошла Линда. Как настоящий джентльмен, пропустил девушку вперед. Очень уж интересно стало, что она хочет спросить у легенды.

Пришлось подождать, пока Кнут ответит опередившим нас академикам. Обстоятельно и не торопясь, с математической точностью. Ни о чем не жалею, хотя нога от долгого стояния на месте начала ныть.

– Здравствуйте, мистер Кнут! Я Линда Ким, художница из студии «Каналья Геймс», – девушка изо всех сил старалась звучать позвонче, но старая астма-не-астма, как назло, заставила ее говорить в привычной хрипящей манере.

– Каналья Геймс, знакомое название. Ваша игра 2048 лишила меня сна на несколько ночей, мисс. Очень изящная демонстрация экспоненциального роста. Я даже высчитал теоретически максимальный размер плитки – два в семнадцатой степени, возможный в том случае, если игроку улыбнется удача.

ШОК! Обладатель премии Тьюринга играл в нашу игру. И ему, черт подери, понравилось.

– Спасибо, это всё придумал Крис… основатель студии. Вот он, следующий в очереди, – Линда очень мило покраснела. – Но спросить я хотела о другом…

– Подождите несколько секунд, Линда.

Кнут достал из кармана брюк чековую книжку и выписал чек.

– Здесь ровно 2048 центов, – сказал он. – Пожалуйста, передайте юной мисс. Достойная награда за прекрасное упражнение для ума. Только попрошу вас, поступите, как остальные – не обналичивайте чек. Я раздал их столько, что рискую обанкротиться в случае, если все обратятся в банк. Простите, вы хотели задать вопрос.

– Спасибо огромное за чек, – еще больше смутилась девушка, – мы поместим его в рамочку. Мой вопрос… не ожидала, что вы геймер… скажите, вашу систему Метафонт кто-то использует для создания текстовых квестов? Возможно ли ее лицензировать?

– Боюсь, для работы Метафонт потребуется мощный университетский мейнфрейм. Если ваша компания располагает доступом к такому, обратитесь к любому из моих ассистентов, вам запишут копию исходных кодов, они распространяются свободно.

– Спасибо, мистер Кнут. Боюсь, покупка мейнфрейма нам пока не по карману, – еще сильнее смутилась Линда и уступила мне место.

– Здравствуйте, сэр, – настала моя очередь. – Крис Коламбус, студия Каналья Геймс. Но мой вопрос не об играх. Скажите, как вы относитесь к концепции патентования алгоритмов?

После первоначального приступа скупости я для себя уже решил не быть жадной задницей. Игры и так принесут достаточно, чтобы я ни в чем не нуждался. Так для чего извращаться, патентуя математику? Однако почему бы и не спросить мнение великого человека? Оно для меня важно, несмотря на то, что есть собственное.

– Категорически отрицательно. Именно поэтому я никогда не пытался и не попытаюсь запатентовать ни ТеХ, ни МЕТАФОНТ – я передал их в общественное достояние. Алгоритмы принадлежат человечеству.

– Благодарю, сэр. Мне было важно услышать вашу позицию.

Решение принято и обжалованию не подлежит! К Ктулху патенты на софт! Но это не означает, что я позволю себя беспрепятственно грабить.

– А теперь прошу прощения у всех присутствующих, я отниму еще немного вашего времени. Доктор Кнут, пожалуйста, оцените следующие улучшения алгоритма быстрой сортировки: первое – использование тройного ветвления. Делить данные на большие, меньшие и равные опорному. Равные элементы не обрабатывать рекурсивно.

Второе – следить за глубиной рекурсии и в плохих случаях переходить к пирамидальной сортировке, гарантируя тем самым конечное время работы на любых данных.

Третье – маленькие хвосты массивов сортировать вставками, как более оптимальным для них методом.

Кнут несколько секунд смотрел на меня поверх очков. Сердитым математик не выглядел. Скорее задумчивым, как если бы запустил в голове отладчик и мысленно прогонял код.

– Ваши предложения выглядят разумно, молодой человек, – наконец сказал он. – Во всяком случае, каждое из них направлено против реальной слабости быстрой сортировки.

Захотелось отыскать на трибунах Стерлинга и показать ему средний палец. Но что-то я «светило» не замечал. Видимо, слушать младшего по возрасту Кнута для него необязательно.

– Однако, – продолжил Кнут, – алгоритм не существует в виде набора хороших намерений. Его нужно формализовать, указать точные критерии перехода к другим методикам и провести измерения. Только после этого можно говорить, что у вас есть что-то большее, чем идея.

– Понял, сэр. Вот там, на трибунах, моя папка, где вся проделанная работа, включая замеры производительности для критичных случаев. Мне будет лестно, если вы взглянете на нее, если найдете время.

– Постараюсь ознакомиться. Кто ваш научный руководитель, Крис?

– Мне помогал с методикой тестирования Сэм Гарланд, аспирант из Беркли, где я вольнослушатель. Наверное, не очень корректно с моей стороны отнимать время у следующих докладчиков.

Я отсалютовал Сэму, нашарив его взглядом на трибуне, и двинулся на своё место.

– Ты молодец! – прошептал я, склонившись к уху Линды, когда вернулся на трибуну. – Не постеснялась спросить.

– Мне показалось, что это важный вопрос. Теперь я хочу мейнфрейм, – ответила та.

Ну так-то я тоже хочу, но кто канальям комп стоимостью в миллионы выдаст? Скорее всего, даже за деньги не продадут, так как заказывать надо за пару лет.

Еще пара не самых интересных докладчиков, которых будто сам Ктулху благословил. В том смысле, что сон навевали. И вот он – доктор Брендон Эс Стерлинг. Зашел в аудиторию на середине предыдущего выступления и, стоило предшествующему докладчику закончить, сам поднялся на трибуну.

– Уважаемые коллеги, тема моей работы «Трехпутевое разделение в быстрой сортировке: преодоление квадратичной деградации на данных с высокой избыточностью», – с легким пафосом провозгласил он. – Удалось выявить пути решения одной из уязвимостей классического алгоритма при минимальной его модификации…

Среди собравшихся зрителей кто-то мне незнакомый издал легкий смешок. Да и вообще шепотки по залу пошли. Статья Сэма, превращенная в доклад путем минимальной редактуры, всё ещё оставалась написанной слишком переусложненным языком. Кнут, например, тоже щедро сыпал терминологией, но у него я понял почти всё, а у Гарланда и Стерлинга – нет, несмотря на то, что нахожусь в теме. Вот она, разница между общепринятым гением и неплохим аспирантом.

– … таким образом, я предлагаю рассматривать равенство опорному элементу а как третий естественный путь разбиения. Выступление закончено. Жду ваших вопросов, коллеги.

И надо же, по каким-то причинам никто из академической элиты к микрофону не пошел, зато подошел Монти.

– Монтгомери Синклер Третий, студент первого курса Беркли, – представился он, – доктор Стерлинг, что вы скажете о проблеме деградации быстрой сортировки при росте глубины рекурсии?

– Это еще одна уязвимость классического алгоритма, к сожалению, пока еще не устраненная. Следующий, пожалуйста.

– Селеста Скай, Беркли, кафедра английской литературы. Мистер Стерлинг, почему ваше выступление такое квадратное? – спросила Селеста.

– Это что, какая-то шутка? Мисс, уйдите от микрофона, пожалуйста, – попросил. Я жду вопросов по существу доклада.

– Эй, профессор, – сказал Эдди в микрофон, заняв освободившееся место. – Я ничего в этом вашем умном дерьме не понимаю, но у меня слух хороший и память неплохая. Вот прямо перед вами, за два лектора до, Си-Си рассказывал доктору Кнуту то же самое. Семнадцатилетний пацан. Только у него круче, чем у вас: три кучки, защита от плохой… этой… глубины и вставками для мелочи. А у тебя – только первая часть. Так совпало или ты до конца его не дослушал?

В зале откровенно заржали на несколько голосов. Один из них, грешен, принадлежал мне. Но и Линда тоже не удержалась и начала смеяться.

– Простите, не услышал вашего имени и откуда вы, – ледяным тоном ответил Стерлинг.

– Эдди, группа «Бесконечность Тьмы». Чуваки, кому автограф нужен, мы далеко не уходим. Все четверо здесь.

– Молодой человек, научные вопросы принято формулировать иначе.

– Так я и спрашиваю научно. У тебя кавер-версия первого куплета Си-Си или ты ту же мелодию независимо написал?

– Мистер Эдди, вы очевидно далеки от академической среды и не готовы оценивать научные работы. Но! Если некий юноша пришел к таким же выводам, что и я, то остается лишь порадоваться за его будущее и принять очевидность моих постулатов.

Хитрый пендехо. Даже не стал пытаться что-то отрицать, хотя лицо у него красными пятнами пошло. Надеюсь, удар старика не хватит. Он, может быть, и последний каброн, но у него наверняка жена, дети, внуки… пусть живет.

– Однако между идеей, высказанной у микрофона, и результатом научного труда пролегает дистанция. Мой доклад посвящен конкретной схеме оптимизации для данных с большим числом повторов. Я ни в коем случае не хочу умалять энтузиазм молодого человека, но я, в отличие от него, предоставил полноценную работу, а не голословные утверждения. Пожалуйста, пусть следующий вопрос задаст профессионал и по существу.

– Привет, я Рокки Раккун Кларк, студент третьего курса Беркли и немного инженер, сделавший пару забавных штук.

Я даже не заметил, как он пробрался к микрофону, но время для того, чтобы спросить, выбрал идеальное. Не скажу, что я ничего такого не задумывал. Но всю работу собирался проделать сам. И, в общем-то, ее сделал. Моего выступления перед Кнутом вполне довольно, чтобы умные люди сообразили, кто и как предложил улучшение сортировки и сделали вывод по поводу Стерлинга. Это бы его не утопило и грантов не лишило. Но репутацию подмочило, надеюсь, изрядно.

Бьюсь о заклад, препод-плагиатор узнал Возняка. Весь зал его узнал, судя по направлению взглядов и хитрым улыбкам.

– У меня нет докторской степени, я всего лишь инженер, – продолжал Воз. – Как инженер, я и услышал от Криса три невероятно конкретных предложения: трехстороннее разделение, ограничение глубины рекурсии с переходом на пирамидальную сортировку и сортировку вставками на малых массивах. Согласитесь, все они потрясающие? Почему вы разобрали одно улучшение и проигнорировали два других, не менее важных?


    Ваша оценка произведения:

Популярные книги за неделю