Zwięzłe wprowadzenie do algorytmów dla matematyków

22

Szukam zwięzłego tekstu wprowadzającego na temat algorytmów z omówioną teorią wysokiego współczynnika

theory coveredtotal number of pages.
Powinno zacząć się od początku, ale potem szybko postępować, nie poświęcając zbyt wiele czasu na przykłady z prawdziwego świata, elementarne techniki dowodowe itp. Jako matematyk badawczy mam solidne doświadczenie w matematyce, którą chętnie wykorzystuję do zrozumienia formalizmów i skondensowanych dowodów, na przykład .

Czy istnieją takie teksty? Jakieś rekomendacje?

Gregor
źródło
nieco spokrewnione, przejście z matematyki na naukę
tcs

Odpowiedzi:

24

Bardzo podoba mi się ten podręcznik:

Sanjoy Dasgupta, Christos Papadimitriou i Umesh Vazirani: Algorytmy
opublikowane przez McGraw-Hill 2007.

Nie obliczam twojego sugerowanego współczynnika, ale myślę, że ci się spodoba :)

użytkownik13136
źródło
4
To wygląda na fajną książkę, którą z pewnością wypróbuję. Dzieki za sugestie.
Gregor
@ user13136 czy mógłbyś mi powiedzieć, jakie jest wymagane zaplecze matematyczne, aby zrozumieć tę książkę?
17

Jeff Erickson sam tego nie powie, ale jego notatki z wykładów są jednymi z najlepszych na temat podstaw projektowania algorytmów na poziomie, który nie patronuje czytelnikowi. Używam ich w mojej klasie algorytmów gradowych, a dla matematyka naukowego notatki te przekazują właściwy rodzaj (i poziom) intuicji, umożliwiając łatwe uzupełnienie szczegółów.

Suresh Venkat
źródło
5
To są świetne notatki.
T ....
8

Knuth w „ Sztuka programowania ” będzie prawdopodobnie książka o najwyższym stosunku.

Jeśli chcesz mieć bardziej podręcznikową książkę, to „ Wprowadzenie do algorytmów ” Cormena, Leisersona, Rivesta i Steina byłoby moją propozycją dla matematyka.

Istnieje również wiele notatek z wykładów i kilka Wikibooks na temat algorytmów.

Kaveh
źródło
8
Nie jestem pewien co do CLRS jako wstępu dla naukowca. Zdecydowanie znam wielu badaczy CS, którzy nie lubią używać go do wyszukiwania rzeczy. TAoCP jest dla mnie interesującym problemem. Zgadzam się, że maksymalizuje to stosunek, ale wiele uwagi poświęca się szczegółom programistycznym, które matematyk może uważać za rozpraszający.
Vijay D
@Vijay, tak, wiem, że CLRS nie jest ulubieńcem wszystkich. Nadal uważam, że inne podręczniki są ogólnie „bardziej czytelne” dla studentów studiów licencjackich dzięki wielu wyjaśnieniom, które tak naprawdę nie są potrzebne matematycznie dojrzałej osobie, ten jest matematycznie solidny i stosunkowo zwięzły. Myślę, że to dobra książka dla osób z dobrym zapleczem matematycznym.
Kaveh
[cd.] Twój punkt widzenia na temat TAoCP jest również poprawny, ale nie zaskakujący, moim zdaniem, biorąc pod uwagę, że napisał go Knuth. Opierając się na własnym doświadczeniu, pomijanie części o MIX i MMIX powinno być łatwe, gdy się o nich nie martwi.
Kaveh
Knuth jest tak naprawdę książką, którą znałem wcześniej, ale całkowicie o niej zapomniałem - dziękuję za przypomnienie. CLRS wydaje się być fajną książką, ale może trochę zbyt skomplikowaną na mój gust. Z drugiej strony miałem na to tylko dwie godziny.
Gregor
1
W przeciwieństwie do Vijay, myślę, że CLR jest właściwym sposobem, aby dowiedzieć się algorytmów. Wszystko naprawdę ładnie wyjaśnia i jest warte kolejnego spojrzenia.
Huck Bennett,
6

Algorytm zaprojektowany przez Kleinberga Tardosa Ta książka pomaga w konkretnym zrozumieniu, jak projektować dobre algorytmy i mówić o ich poprawności i wydajności. (Studiowałem to na pierwszym roku studiów, bardzo czytelne)

Aby otrzymać kopię online / notatki z wykładu / referencje (jak sugeruje Suresh Venkat), przejdź do notatek z wykładu Jeffa Eriksona . Są naprawdę niesamowite!

Subhayan
źródło
5

Pójdę do optymalizacji kombinatorycznej: Teoria i algorytmy - Korte & Vygen . To da ci dobry przegląd algorytmów ze stałym naciskiem na optymalizację. Ta książka jest przeznaczona dla osób o dużej skłonności matematycznej IMHO.

Myślę, że pasowałoby to do algorytmów: Dasgupta i Papdimitrou.

Doktorat
źródło
Ta książka wydaje się najbardziej zbliżona do tego, co miałem na myśli pod względem powyższego stosunku. Wkrótce zajmę się tym bardziej poważnie i być może wykorzystam to razem z Daguptą i in. w rzeczy samej. Dziękuję za sugestię.
Gregor
4

Napisałem dyspozycję na kurs algorytmów, w którym uczestniczyłem. Dokładnie taki był cel; być zwięzłą wersją najważniejszych tematów poruszonych w naszym polu tekstowym (którym był CLRS). Niechętnie publikuję go na Scribd.com lub gdziekolwiek indziej, dopóki nie dokładnie zbadam dokument i nie będę zadowolony z jego zawartości, ale kopię roboczą można uzyskać pod adresem stronie https://github.com/CasperBHansen/DIKU_AD_2013/ . Aby go przeczytać, musisz wiedzieć, jak zbudować dokument pdf ze źródła LaTeX, do czego służy repozytorium. Sam dokument ma tylko 65 stron.

Starszą kopię można pobrać bezpośrednio z mojej strony internetowej pod adresem http://casperbhansen.dk/files/ad-disposition.pdf - to oczywiście zawiera więcej literówek / błędów, które od tego czasu zostały poprawione.

Zawiera kilka literówek, ponieważ zostało napisane w ciągu zaledwie kilku dni, podczas gdy przechodzę kolejny egzamin i oczywiście przygotowuję się do egzaminu z algorytmów, ćwicząc dowody, a ja jeszcze nie załatałem literówek i błędów, ponieważ od tego czasu jestem bardzo zajęty. Ale jestem pewien, że każdy, kto ją przeczyta, z łatwością rozpozna błędy, ponieważ są one zwykle w sprzeczności z towarzyszącym tekstem lub formułami, więc łatwo to rozgryźć, gdy wystąpi literówka.

Mam nadzieję, że pomoże ci to zacząć.

Casper B. Hansen
źródło
0

oto dwa inne referencje, które mogą być pomocne.

  • Algorytmy Sedgewicka powiedziałeś „wprowadzenie”; ta książka jest czasami używana na licencjackich zajęciach z CS, chociaż może być używana na niektórych zajęciach dla absolwentów. Sedgewick ma inne bardzo techniczne referencje na temat TCS, a niektóre z tego matematycznego stylu znajdują odzwierciedlenie w Algorytmach i są ogólnie zwięzłe. zasięg jest bardzo istotny dla (T) CS (ale nie tak bardzo w obszarach zaawansowanych). napisał również „wpływ”, że napisał doktorat pod kierunkiem Knutha.

  • Komputery i trudność, przewodnik po teorii kompletności NP , starsze, ale wciąż bardzo istotne ref. skupia się oczywiście na kompletności NP, ale pod wieloma względami „to tam jest dużo akcji”. zakres jest szeroki i prawdopodobnie spodoba się matematykom, ponieważ koncentruje się na wielu obiektach matematycznych, np. grafach itp., i zwróć uwagę na rozdział dotyczący teorii liczb. jak twierdzi wikipedia

Książka jest obecnie pod pewnymi względami nieaktualna, ponieważ nie obejmuje nowszych opracowań, takich jak twierdzenie PCP. Mimo to jest nadal drukowany i jest uważany za klasyczny: w badaniu z 2006 roku wyszukiwarka CiteSeer wymieniła książkę jako najczęściej cytowane odniesienie w literaturze informatycznej [3].

vzn
źródło
0

Opublikuję odpowiedź, która dała ogólny pogląd na przeczytane rozdziały. Handbook of Theoretical Computer Science: Algorytmy i złożoność, tom 1 pod redakcją Jana Leeuwena . Ma duże nazwiska, takie jak HW Lenstra, Valiant itp. To nie jest tekst jako taki. Jednak przeczytanie tego po wstępnym zrozumieniu daje więcej wglądu i porusza interesujące tematy w TCS. Jest również matematyczny, a każdy rozdział zawiera wprowadzenie do tematu przed zanurzeniem się w nim. Pamiętaj, że tematy poruszają się od momentu ukazania się książki1990.

T ....
źródło
-5

spróbuj Zwięzła encyklopedia informatyki , Wiley. niestety kompletny / dokładny spis treści dla tego ref nie wydaje się być dostępny w sieci [nieco niezwykłe pominięcie w dzisiejszych czasach, być może Wiley może to naprawić na żądanie], ale pełny indeks wydaje się możliwy do przeglądania w Amazon. ma zasięg znacznie szerszy niż TCS, takie jak koncepcje sprzętowe itp., ale wydaje się, że obejmuje znaczną część TCS, np .:

  • Informacje i dane
  • Oprogramowanie
  • Matematyka Informatyki
  • Teoria obliczeń
  • Metodologie
  • Aplikacje

jest to skrócona wersja pełnej encyklopedii 902pp, Encyclopedia of Computer Science, wydanie 4 , 2064pp

vzn
źródło
17
Czy otworzyłeś tę książkę? Patrząc na próbki z „kompletnej encyklopedii”, takiej jak media.wiley.com/assets/152/09/mathematics.pdf , wygląda to na okropną sugestię. Jest to dokładne przeciwieństwo badania algorytmów napisanych dla matematyków.
Sasho Nikolov
tak naprawdę nie podążaj za całym silnym sprzeciwem lub problemem z cytowanym wpisem. pytający nie nalegał wyraźnie, aby sędzia zawierał wiele opisów matematycznych; podczas gdy ok, myślę, że tłum przewiduje, że i zwięzła encyklopedia wydaje się spełniać podstawową prośbę, a nawet być korzystna. inna opcja właśnie natknęła się, nieco podobna patrz także encyklopedia algorytmów , springer. „Obecnie nie są dostępne żadne porównywalne prace referencyjne nad algorytmami”.
vzn
żartujesz? chce dużo teorii na każdej stronie i prosi o książkę, która nie boi się przedstawić zwięzłych dowodów z dużą ilością formalizmu. sugerujesz gadatliwą książkę dla publiczności, która ma 900 stron i obejmuje niewiele teorii.
Sasho Nikolov
2
BTW, większość tego, co tu piszesz, w tym ta odpowiedź i powyższy komentarz, jest niegramatyczna i nielogiczna do tego stopnia, że ​​jest ledwo zrozumiała.
Sasho Nikolov
powiedział, że rozumie formalizm / dowody, ale nie stwierdził, że sędzia powinien to mieć. encyklopedia referencje są oczywiście / naturalnie istotne / apropos. może nie jest idealny, ale nie bezwartościowy lub do zgubienia. „wystarczająco dobry” do niektórych celów. jak dla stałej / tak daleko niekończące / konsekwentnie niekonstruktywne haranging / griping / osobista zemsta na konstruktywnych / dobre odpowiedzi wiara, nie ma odpowiedzi na to pytanie
vzn