Cormen'in ötesindeki algoritmalar için kitap


21

Cormen'in Algoritmalara Giriş kitabındaki materyallerin çoğunu bitirdim ve Corman'ın kitabının ötesindeki materyalleri kapsayan bir algoritma kitabı arıyorum. Herhangi bir öneriniz var mı?

NOT: Bunu stackoverflow üzerinde sordum ama cevaptan çok memnun değildi.

NOT: İdeal olarak düşündüğüm yorumların çoğuna baktığımda, bu ders tanımındaki 787 dersinin materyallerini kapsayacak bir kitap bulmak istiyorum .


1
bkz bu
Kaveh

1
@Kaveh Tardos'u zaten okudum.
Eugene

1
"Algoritmalara Giriş" algoritma tasarımı ve analizi kapsamındaki hemen her şeyi kapsar ve hem lisans hem de lisansüstü düzeydeki dersler için dünyanın en popüler ders kitabıdır. Her bölüm ilgili materyallere kısa bir giriş sağlar ve ayrıca sonunda daha fazla çalışma için çok uzun bir referans listesi vardır. Grafik algoritmaları, karmaşıklık teorisi vb. Gibi belirli bir konuyu daha iyi anlamanız gerektiğini düşünüyorsanız, en iyi bahisiniz kitabın bibliyografyasına bakmaktır ve eğer yardımcı olmazsa, bu konuda etki alanı uzmanlarından tavsiye isteyebilirsiniz. belirli alan.
Ali

12
"Algoritmalara Giriş" algoritma tasarımı ve analizi kapsamındaki hemen hemen her şeyi kapsar - Ah, eğer doğruysa.
JeffE

5
Gerçekten sevdiğim bir kitap Algoritmalara Giriş: Yaratıcı Bir Yaklaşım , Udi Manber. Diğer çoğu ders kitapları aksine, o nasıl öğretir gelip kendi başınıza algoritmalarla. Ders kitabında kapsanan her algoritma için, bölümlerin ilerlemesini, ilki en belirgin yaklaşımı ve her biri bir öncekinin hatalarını düzeltmeye yönelik ardışık girişimleri açıklar. Bence mükemmel bir metin.
Vinayak Pathak

Yanıtlar:


9
I am looking for an algorithms book that covers material beyond Corman's book.

Bu, "ötesinde" ne istediğinize bağlı olarak çok farklı şekillerde cevaplanabilir. Yararlı olan belirli cevapları alma olasılığınız daha yüksek olduğundan, çok daha spesifik talimatlar sormanızı tavsiye ederim. Bazı genel rehberlik gelince:

  • Sen Corman daha derinlemesine genel algoritmik konuları keşfetmek genel kitapların bir avuç bulabilirsiniz, ancak çoğunlukla, kitap olacak eğer uzmanlaşmış başlamak gerekir anlamlı derinlemesine fazlası. Aksi takdirde şişirilmesi ve kullanışlılığı yoktur.
  • Bunun yerine belirli konuları arayın. Belirli konulara odaklanırsanız birçok gelişmiş malzeme vardır. Araya girdiniz mi:
    • sıralama algoritmaları?
    • dize algoritmaları?
    • teorik algoritma sayısı?
    • matris algoritmaları?
    • grafik algoritmaları?
    • geometrik algoritmalar?
    • kuantum algoritmaları?
    • stokastik / rasgele algoritmalar?
    • doğrusal programlama?
    • hesaplama modelleri?
    • temel karmaşıklık teorisi ve algoritmaları?
  • Kendi algoritmalarınızı nasıl türeteceğinizi anlamak istiyorsanız, yatırım yaptığınız sorun alanında kullanılan bilinen veri yapılarını anlamaya odaklanın (bu nedenle, mevcut bilginin derinliğini elde edin) ve karmaşıklık teorisi ve modellerinin iyi anlaşılmasına sahip olun. hesaplama. Bunlar, belirli bir sorun için neyin mümkün olduğuna ve resmi olarak daha düşük sınırları kanıtlamakta zorlansanız bile, hangi yaklaşımların daha iyi başarıya sahip olacağına dair sezgisel bir his verecektir.

Papadimitriou'nun birkaç veya Karmaşıklık Teorisi üzerine Arora / Barak gibi kitaplar, Corman'a hangi algoritmaların mümkün olduğunu daha iyi anlamak ve bazı sezgiler oluşturmak için takip etmem için önerim olurdu, ancak sadece belirli alanlarda modern genel bakış belgelerine bakıp mezun olmayı ve Modern anlayış seviyesine aşina olmak istiyorsanız, daha spesifik konularda araştırma seviyesi kitapları.


1
Çok güzel bir soru soruyorsun. Sayı teorik algoritmalarla ilgileniyorum, bu yüzden Bach ve Shallit'in Algoritmik Sayı Teorisi'ne zaten baktım. Yine de Cormen'in ötesinde algoritmik geliştirme tekniklerimi geliştirecek kitaplar arıyorum.
Eugene

1
Derinlik değil genişlik arıyorum. Temel karmaşıklık teorisi değil, duyduğum ancak duyduğum şeylerin programlama cephaneliğine eklemek için CLRS'de (veya sadece problem olarak mevcut değil) algoritmalara / veri yapılarına giriş; gibi şeyler: A * arama, En İyi İlk Arama, Bloom filtreleri, dosya / görüntü sıkıştırma, Burstsort, Gizli Markov Modeli, Naive Bayes sınıflandırıcılar, kuantum algoritmaları, atlama listeleri, TimSort, Treaps, Denemeler, Voronoi diyagram algoritmaları, vb. Bentley'nin Programlama İncileri gibi çeşitli konularda ilginç makalelerden oluşan bir koleksiyon.
dr jimbob

16

Diğerlerinin de belirttiği gibi, (gelişmiş) algoritmalar hakkındaki kitaplar en iyi şekilde konuya göre seçilir. Titiz analizlerle iyi fakat ağır bir genel referans muhtemelen Knuth tarafından Bilgisayar Programlama Sanatıdır.

Analiz tekniklerine gelince , aynı yönde daha fazla teori için Sedgewick ve Flajolet'in Algoritma Analizine Giriş ve Flajolet ve Sedgewick'in Algoritmik Kombinatoriklerine ilgi duyabilirsiniz.

Zor problemlerle mücadele yaklaşımları için bkz . Hromkovič tarafından Zor Sorunlar için Algoritma .


5

Teorik Bilgisayar Bilimi El Kitabı'na baktınız mı?

Zorunlu algoritmaların ötesine geçmek ve işlevsel programlamaya geçmek istiyorsanız, Tamamen İşlevsel Veri Yapıları'na bakın . Başlığın veri yapılarını söylediğini biliyorum ama kitaptaki algoritmalar gözlerinizi farklı bir programlama yöntemine açabilir.

DÜZENLE

CS 787 ve güncel dersler için ders tanımlarına bir göz attım

Notları

Daha çok literatürden makaleler kullanacağız. Bunlar çalışma kağıtları olarak veya web üzerinden sunulacaktır. Algoritmalar üzerine birkaç kitap Wendt kütüphanesinde rezerve edilecektir.

Eğer ben olsaydım eğitmen diziniyle iletişime geçirdim . :)


Hayır, el kitabını görmedim. Önerin için teşekkürler!
Eugene

Vay. Kurs bilgisini bulamadım. Bağlantı için teşekkürler.
Eugene

-2

Bilgisayar algoritmaları çok karmaşık ve anlaşılması zor bir konu, bu yüzden en iyi kitap, yani size her şeyi açıklayacak sadece bir kitap. Bu konuyu ele almak için birkaçını okumalısınız.

10 yıllık programlama ve çok sayıda röportaja dayanan 2 sentim:

  1. Algoritma Tasarım Kılavuzu by Steven S. Skiena
  2. Sedgwick tarafından algoritmalar ( http://algs4.cs.princeton.edu/home/ )
  3. Algoritmalara Giriş Thomas Cormen
  4. Adnan Aziz Röportaj Algoritmaları
  5. Python Algoritmaları: Python Dilinde Temel Algoritmalarda Uzmanlaşma
  6. Thomas Cormen Tarafından Açılan Algoritmalar

Referans:


4
Ve neden bu tavsiye edersiniz?
Raphael

3
Özellikle, neden bu kitabın ötesine geçen kitaplar soran bir soruya yanıt olarak Cormen ve arkadaşlarının "Algoritmalara Giriş" i öneriyorsunuz?
David Richerby
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.