Introduzione concisa agli algoritmi per i matematici


22

Sto cercando un testo introduttivo conciso sugli algoritmi con un rapporto elevatoDovrebbe iniziare all'inizio, ma poi progredire rapidamente senza spendere troppo tempo su esempi del mondo reale, tecniche di prova elementari, ecc. Come matematico della ricerca ho una solida base in matematica che uso felicemente per comprendere formalismi e prove condensate, per esempio .

theory coveredtotal number of pages.

Esistono tali testi? Qualche consiglio?


in qualche modo correlato, passando dalla matematica allo studio
tcs

Risposte:


24

Mi piace molto questo libro di testo:

Sanjoy Dasgupta, Christos Papadimitriou e Umesh Vazirani: Algorithms,
pubblicato da McGraw-Hill 2007.

Non calcolo il rapporto suggerito, ma penso che piacerà anche a te :)



4
Sembra un bel libro che proverò sicuramente. Grazie per il suggerimento
Gregor,

@ user13136 ti dispiacerebbe dirmi qual è il background matematico richiesto per capire questo libro?

17

Jeff Erickson non lo dirà da solo, ma i suoi appunti di lezione online sono tra i migliori là fuori per coprire le basi della progettazione di algoritmi a un livello che non protegge il lettore. Li uso nella mia classe di algoritmi di laurea e, per un matematico di ricerca, queste note trasmettono il giusto tipo (e livello) di intuizione, permettendoti di compilare facilmente i dettagli.


5
Queste sono grandi note.
T ....

8

" The Art of Computer Programming " di Knuth sarebbe probabilmente il libro con il rapporto più alto.

Se vuoi un libro in stile più da manuale, " Introduzione agli algoritmi " di Cormen, Leiserson, Rivest e Stein sarebbe il mio suggerimento per un matematico.

Ci sono anche molte note e alcuni Wikibook sugli algoritmi.


8
Non sono così sicuro di CLRS come introduzione per un ricercatore. Conosco sicuramente molti ricercatori CS che non amano usarlo per cercare cose. TAoCP è una domanda interessante per me. Sono d'accordo che massimizza il rapporto, ma c'è molta attenzione ai dettagli programmatici che un matematico potrebbe trovare distratto.
Vijay D,

@Vijay, sì, lo so che CLRS non è il preferito di tutti. Tuttavia ritengo che altri libri di testo siano generalmente "più leggibili" per gli studenti universitari con molte spiegazioni che non sono realmente necessarie per una persona matematicamente matura, questa è matematicamente solida e relativamente concisa. Penso che sia un buon libro per persone con un buon background matematico.
Kaveh,

[cont.] Anche il tuo punto su TAoCP è corretto, ma non sorprende a mio avviso considerando che è scritto da Knuth. Sulla base della mia esperienza, dovrebbe essere facile saltare le parti su MIX e MMIX quando non ci si preoccupa.
Kaveh,

Knuth è in realtà un libro che conoscevo prima, ma che avevo completamente dimenticato - quindi grazie per il promemoria. CLRS sembra un bel libro ma forse un po 'troppo prolisso per i miei gusti. D'altra parte, ho avuto solo due ore di rapida occhiata.
Gregor,

1
Contrariamente a Vijay, penso che CLRS sia il modo giusto per imparare gli algoritmi. Spiega tutto molto bene e vale un'altra occhiata.
Huck Bennett,

6

Algorithm Design di Kleinberg Tardos Questo libro aiuta a sviluppare una comprensione concreta di come progettare buoni algoritmi e parlare della loro correttezza ed efficienza. (Ho studiato questo nel mio primo anno al college, molto leggibile)

Per una copia online / appunti delle lezioni / riferimenti, (come suggerito da Suresh Venkat) vai con gli appunti delle lezioni di Jeff Erikson . Sono davvero fantastici!


5

Vorrei optare per l' ottimizzazione combinatoria: teoria e algoritmi - Korte & Vygen . Ti fornirà una buona panoramica degli algoritmi con un focus costante sull'ottimizzazione. Questo libro è destinato a coloro con una forte inclinazione matematica IMHO.

Questo andrebbe bene con Algorithms: Dasgupta e Papdimitrou, credo.


Questo libro sembra avvicinarsi a quello che avevo in mente in termini di rapporto sopra. Lo esaminerò più seriamente presto e forse lo userò insieme a Dagupta et al. infatti. Quindi grazie per il suggerimento.
Gregor,

4

Ho scritto una disposizione per il corso di algoritmi a cui ho partecipato. Lo scopo era esattamente quello; essere una versione sintetica degli argomenti più importanti trattati nella nostra casella di testo (che era CLRS). Sono riluttante a pubblicarlo su Scribd.com o altrove fino a quando non ho esaminato a fondo il documento e non sono soddisfatto del suo contenuto, ma è possibile ottenerne una copia di lavoro su https://github.com/CasperBHansen/DIKU_AD_2013/ . Per leggerlo dovrai sapere come creare il documento pdf dalla fonte LaTeX, a questo scopo serve il repository. Il documento stesso è lungo solo 65 pagine.

Una copia più vecchia può essere scaricata direttamente dal mio sito Web all'indirizzo http://casperbhansen.dk/files/ad-disposition.pdf - questo ovviamente contiene più errori di battitura / errori, che da allora sono stati corretti.

Contiene diversi errori di battitura perché è stato scritto nel giro di pochi giorni mentre si sottoponeva a un altro esame e ovviamente si stava preparando per l'esame degli algoritmi praticando prove, e devo ancora correggere errori di battitura ed errori poiché da allora sono stato molto impegnato. Ma sono sicuro che chiunque lo legga riconoscerebbe facilmente gli errori, poiché di solito sono in contraddizione con il testo o le formule di accompagnamento, quindi è facilmente comprensibile ogni volta che si verifica un errore di battitura.

Spero che possa aiutarti a iniziare.


0

ecco altri due riferimenti che potrebbero essere utili.

  • Algorithms di Sedgewick ha detto "introduttivo"; questo libro è talvolta usato in corsi di laurea triennale, anche se potrebbe essere usato in alcune classi di laurea. Sedgewick ha altri riferimenti molto tecnici su TCS e parte di questo stile matematico si riflette negli algoritmi ed è generalmente uno stile succinto. la copertura è molto centrale per (T) CS (ma non così tanto nelle aree avanzate). ha anche scritto "influenze" e ha fatto la sua tesi di dottorato sotto Knuth.

  • Computer e intrattabilità, una guida alla teoria della completezza NP un riferimento più vecchio ma ancora molto rilevante. si concentra ovviamente sulla completezza NP ma in molti modi "ecco dove si trova molta azione". il campo di applicazione è ampio e sarà probabilmente interessante per i matematici in quanto è focalizzato su molti oggetti matematici, ad esempio grafici ecc., e nota che c'è una sezione sulla teoria dei numeri. come afferma Wikipedia

Il libro è ora obsoleto per alcuni aspetti in quanto non copre lo sviluppo più recente come il teorema di PCP. È ancora ancora in stampa ed è considerato un classico: in uno studio del 2006, il motore di ricerca CiteSeer ha elencato il libro come riferimento più citato nella letteratura informatica. [3]



-5

prova l' enciclopedia concisa dell'informatica , Wiley. sfortunatamente un indice completo / completo per questo riferimento non sembra essere disponibile sul web [un'omissione alquanto insolita al giorno d'oggi, forse Wiley potrebbe correggerlo su richiesta] ma l' indice completo sembra essere sfogliabile su Amazon. ha una copertura molto più ampia di TCS come concetti hardware ecc., ma sembra coprire parti significative di TCS, ad esempio:

  • Informazioni e dati
  • Software
  • Matematica dell'informatica
  • Teoria del calcolo
  • metodologie
  • applicazioni

è una versione ridotta di 902pp dell'enciclopedia completa, Encyclopedia of Computer Science, 4th Edition , 2064pp


17
Hai aperto questo libro? Guardare esempi dell '"enciclopedia completa" come media.wiley.com/assets/152/09/mathematics.pdf sembra un suggerimento orribile. È l'esatto contrario di un sondaggio sugli algoritmi scritti per i matematici.
Sasho Nikolov,

non seguire davvero tutta la forte opposizione o il problema con la voce citata. l'interrogante non ha insistito specificamente sul fatto che l'arbitro avrebbe contenuto molta matematica nelle descrizioni; mentre ok angolo pensa che la folla stia proiettando che un'enciclopedia concisa sembrerebbe soddisfare la richiesta di base e persino essere vantaggiosa. un'altra opzione è appena passata, in qualche modo simile vedi anche l' enciclopedia degli algoritmi , springer. "Attualmente non sono disponibili lavori di riferimento comparabili sugli algoritmi."
vzn,

stai scherzando? vuole molta teoria coperta per pagina e chiede un libro che non abbia paura di presentare prove succinte con molto formalismo. tu suggerisci un libro per il pubblico loquace, che è di 900 pagine e copre poca teoria.
Sasho Nikolov,

2
A proposito, la maggior parte di ciò che scrivi qui, compresa questa risposta e il commento sopra, è sgrammaticato e illogico al punto da essere appena comprensibile.
Sasho Nikolov,

ha detto che capisce formalismo / prove ma non ha affermato che l'arbitro dovrebbe averlo. i riferimenti dell'enciclopedia sono ovviamente / naturalmente rilevanti / a proposito. forse non perfetto, ma non inutile o da cestinare. "abbastanza buono" per alcuni scopi. per quanto riguarda la tua costante / finora infinita / consistentemente non costruttiva aggressione / presa / vendetta personale su risposte costruttive / in buona fede, non ho risposta a questo
vzn
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.