Anatoly Vorobey (avva) wrote,
Anatoly Vorobey

пападимитриу и алгоритм гейтса (программистское)

People of ACM: Christos Papadimitriou

Небольшое интересное интервью с Христосом Пападимитриу, которого я лично знаю как автора любимого учебника по теории сложности (Computational Complexity 1994 года; возможно, недавний учебник Arora & Barak презвошел его, не знаю, не читал; кстати, есть мнения на эту тему?). Еще он один из соавторов отличного учебника алгоритмов (Dasgupta, Papadimitriou, Vazirani, Algorithms), и автор популярного комикса про логику и теорию множеств (!) Logicomix.

Пападимитриу упоминает, что у него был студентом Билл Гейтс, до того, как бросил учиться, чтобы основать Майкрософт. Я не знал, что они написали вместе статью:
When I was an assistant professor at Harvard, Bill was a junior. My girlfriend back then said that I had told her: "There's this undergrad at school who is the smartest person I've ever met."

That semester, Gates was fascinated with a math problem called pancake sorting: How can you sort a list of numbers, say 3-4-2-1-5, by flipping prefixes of the list? You can flip the first two numbers to get 4-3-2-1-5, and the first four to finish it off: 1-2-3-4-5. Just two flips. But for a list of n numbers, nobody knew how to do it with fewer than 2n flips. Bill came to me with an idea for doing it with only 1.67n flips. We proved his algorithm correct, and we proved a lower bound—it cannot be done faster than 1.06n flips. We held the record in pancake sorting for decades. It was a silly problem back then, but it became important, because human chromosomes mutate this way.

Two years later, I called to tell him our paper had been accepted to a fine math journal. He sounded eminently disinterested. He had moved to Albuquerque, New Mexico to run a small company writing code for microprocessors, of all things. I remember thinking: "Such a brilliant kid. What a waste."

Вот эта статья: Gates, Papadimitriou. Bounds For Sorting By Prefix Reversal. Алгоритм Гейтса несложен для понимания и вполне остроумен.
Tags: программирование

Recent Posts from This Journal

  • 2-3 монетки

    Простая задачка с несколько неожиданным ответом. У Алисы две монетки, у Бена три. Они одновременно бросают все свои монетки. Побеждает тот, у кого…

  • открытая запись

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

  • о писательских курсах

    «Единственное лекарство — делать свое дело». Писатель Майя Кучерская Видел несколько обсуждений интервью писателя Майи Кучерской (ничего не читал…

  • Post a new comment


    default userpic

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.