Algoritmalar kitabını Türkçe olarak Bilgisayar kitapları Kategorisi altında PDF olarak indirebilirsiniz. Ayrıca seafoodplus.info arşivlerinden PDF, ePUB, Rar ve Zip formatlarında da indirebilir online olarak okuyabilirsiniz.
Sayfa içindekiler
“Bilgisayar biliminin bilgisayarlarla bağlantısı, astronominin teleskoplarla bağlantısından fazla değildir.” E. W. Dijkstra
Bilgisayar bilimlerinin özünü oluşturan algoritma analizi, insanlığın tarih boyunca geliştirdiği, bilgisayar donanımından, programlama dillerinden veya yazılım projelerinden bağımsız, bir işin farklı şekillerde nasıl yapılacağını anlatan, bilgi birikimini oluşturmaktadır. Herhangi bir dilde veya ortamda, herhangi bir amaçla program yazmak isteyen birinin, yazdığı programı daha iyi nasıl yazabileceğini veya yazılabilecek en iyi algoritmayı geliştirdiğini anlaması ancak algoritmayı doğru şekilde analiz etmesi ile mümkün olur. Bu kitap, algoritma analizi kavramlarına giriş yapmanın yanında, programlama ile uğraşan herhangi birinin ihtiyaç duyabileceği çok klasik problemler için de çözüm yollarını sunmakta ve hatta bu çözümlerin Java gibi güncel bir dil üzerinden kodlaması ile ilgili örnekler de vermektedir.
Bilgisayar bilimlerinin ve programlamanın en gizemli ve ilgi çekici konusu olan algoritmalara bu kitapla giriş yapan biri için programlama artık çok farklı bir olguya dönüşecektir.
Algoritmalar yayınını online olarak okumak için indirmeniz gerekmektedir. PDF formatındaki dosyaları Adobe programı ile ePUB formatındaki dosyaları Microsoft EDGE ile açabilir yada kindleınızda okuyabilirsiniz.
İndirme linkine ulaşabilmek için sosyal medya paylaşım yöntemlerini kullanabilir yada 90 saniye beklemelisiniz. Eğer beklemek istemiyorsanız yada indiremiyorsanız lütfen konuya yorum bırakın
Bilgisayar kitapları türleri hakkında diğer yayınları göz atmak için buradan.
Algoritmalar kitabını PDF, ePUB, RAR, ZIP formatlarında indirmeye çalışırken herhangi bir sorun ile karşılaştıysanız lütfen sorunu anlatan yorumunuzu bırakın.
Seviye: Lisans Öğretim Üyeleri: Prof. Charles Leiserson Prof. Erik Demaine Çevirmenler: Prof. Dr. Ali Yazıcı Haluk Ar | ||
J ders kitabının kapağı, Algoritmalara Giriş, İkinci Basım, Cormen, Leiserson, Rivest ve Stein. | ||
Ders Özellikleri | ||
Ders Videoları | Transkriptler | |
Seçilmiş ders notları | Ödevler ve Çözümleri | |
Sınavlar ve Çözümleri | ||
Dersin Ana Başlıkları | ||
Bu ders bütün ders notları ve ders videolarını içermektedir. Ders kitabı Prof. Leiserson'ın katkısıyla yazılmıştır. | ||
Dersin Tanımı | ||
Bu ders, verimli algoritmaların tasarımı ve çözümlemesi ile ilgili teknikleri, pratikteki kullanımlarını vurgulayarak öğretir. Dersin içerdiği konular: Sıralama, arama ağaçları, yığınlar ve kıyım fonksiyonları, böl ve fethet; dinamik programlama, amortize edilmiş çözümleme, grafik algoritmaları, en kısa yollar, ağ akışı, bilişimsel geometri, sayı teorisi algoritmaları, polinom ve matriks hesaplamaları; ön bellekleme ve paralel hesaplamalardır. Bu ders aynı zamanda Singapur-MIT Ortaklığı (SMA) programı kapsamında SMA sayılı ders olarak da verilmektedir. (Algoritmaların Tasarımı ve Çözümlenmesi ) | ||
Teknik Gereksinimler | ||
Bu dersteki bazı dosyaları çalıştırmak için özel yazılımlar gerekir: .c, .java. |
Ders Saatleri
Ders : 2 oturum / hafta, saat / oturum
Ek ders: 1 oturum / hafta, 1 saat / oturum
Dersin amaçları ve sonuçları
Dersin amaçları
Bu ders, bilgisayar algoritmalarının çözümlenmesi ve tasarımı konularına bir giriş niteliğindedir. Dersin tamamlanması ile öğrenciler şunları kazandıracaktır:
Ön Koşullar
Programlamanın iyice anlaşılmış olması ve olasılık teorisi ile ayrık matematik konularında sağlam bir bilgi birikimi bu ders için ön koşuldur.
Dersler
Dersler Pazartesi ve Çarşamba günleri saatlik sürelerle işlenecektir. Derslerde sunulan konular ile ilgili sorumlusunuz.
Ek Dersler
Öğrenciler her hafta bir saat ek derse katılmak durumundadır. Ek derslerde anlatılan konulardan da sorumlusunuz. Ek derslere katılım ile sene sonu notu arasında daha önceki senelerde görülen doğru orantılı bir ilişki var. Ek dersler, size soru sorabilmeniz ve eğitmenler ile etkileşim sağlamanız için ortam yaratacaktır.
Kitap
Bu ders için referans kitabı : Cormen, Thomas H., Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein. Introduction to Algorithms. 2nd ed. Cambridge, MA: MIT Press. ISBN:
Daha önceki senelerde bu kitabın birinci basımı kullanılıyordu. Ancak 2. basım 1. Basımın geliştirilmiş hali olduğundan, ilk basımı referans kitabı olarak kullanmak uygun değildir.
Aşağıdaki takvimde, kursun dersleri (L), etütleri (R) ve ara sınavları (Q) ile ilgili bilgiler yer alır. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Aşağıdaki Tablo Ders kitabında olan dersin okuma ödevlerini göstermektedir: Cormen, Thomas H., Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein. Introduction to Algorithms. 2nd ed. Cambridge, MA: MIT Press. ISBN: Dersin belirtilen okuma ödevlerine ek olarak Yararlı Başvuru Kaynaklarına da bakınız | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Yararlı Başvuru Kaynakları Aho, Alfred V., John E. Hopcroft, and Jeffrey D. Ullman. The Design and Analysis of Computer Algorithms. Reading, MA: Addison-Wesley, ISBN: The classic text, but it lacks topics in network flows and linear programming, as well as more recent algorithms. ———. Data Structures and Algorithms. Reading, MA: Addison-Wesley, ISBN: Revised and more elementary version of the first six chapters of The Design and Analysis of Computer Algorithms. Baase, Sara. Computer Algorithms: Introduction to Design and Analysis. 2nd ed. Reading, MA: Addison-Wesley, ISBN: General reference, although the exposition is sometimes terse or sketchy. Bentley, Jon Louis. Programming Pearls. Reading, MA: Addison-Wesley, ISBN: Applications of algorithm design techniques to software engineering. ———. More Programming Pearls: Confessions of a Coder. Reading, MA: Addison-Wesley, ISBN: More applications of algorithm design techniques to software engineering. ———. Writing Efficient Programs. Englewood Cliffs, NJ: Prentice-Hall, ISBN: Performance hacking extraordinaire. Brassard, Gilles, and Paul Bratley. Algorithmics: Theory and Practice. Englewood Cliffs, NJ: Prentice-Hall, ISBN: Good examples and problems. Focus on methods rather than specific problems. Chung, Kai Lai. Elementary Probability Theory with Stochastic Processes. New York, NY: Springer-Verlag, ISBN: Intuitive introduction to probability. Even, Shimon. Graph Algorithms. Rockville, MD: Computer Science Press, ISBN: Broad treatment of graph algorithms, including network flow and planarity. Feller, William. An Introduction to Probability Theory and Its Applications. 3rd ed. 2 vols. New York, NY: John Wiley & Sons, , ISBN: ISBN: Excellent reference for probability theory. Garey, Michael R., and David S. Johnson. Computers and Intractibility: A Guide to the Theory of NP-Completeness. San Francisco, CA: W. H. Freeman & Co., ISBN: Reference book devoted to NP-completeness. The second half contains an extensive list of NP-complete problems and references to algorithms in the literature for polynomial-time special cases. Gonnet, Gaston H. Handbook of Algorithms and Data Structures. Reading, MA: Addison-Wesley, ISBN: X. Code in Pascal and C, comparisons of actual running times, and pointers to analysis in research papers. Gusfield, Dan. Algorithms on Strings, Trees, and Sequences: Computer Science and Computational Biology. Cambridge, UK: Cambridge University Press, ISBN: General treatment of algorithms that operate on character strings and sequences. Horowitz, Ellis, and Sartaj Sahni. Fundamentals of Computer Algorithms. Potomac, MD: Computer Science Press, ISBN: Good on data structures, dynamic programming, and branch-and-bound algorithms. Kingston, Jeffrey H. Algorithms and Data Structures: Design, Correctness, Analysis. Reading, MA: Addison-Wesley Publishing Co., ISBN: A nice introductory book on data structures, with a good chapterchapter on algorithm correctness. Knuth, Donald E. The Art of Computer Programming. 3rd ed. 3 vols. Reading, MA: Addison-Wesley, ISBN: ISBN: ISBN: Encyclopedic work in three volumes: (1) Fundamental Algorithms, (2) Seminumerical Algorithms, and (3) Sorting and Searching. Lawler, Eugene L. Combinatorial Optimization: Networks and Matroids. New York, NY: Holt, Rinehart, and Winston, ISBN: Graph algorithms (dense graphs), network flows, and linear programming. First few chapters are excellent. Liu, Chung L. Introduction to Combinatorial Mathematics. New York, NY: McGraw-Hill, ISBN: Combinatorial mathematics relevant to computer science. Excellent problems. Manber, Udi. Introduction to Algorithms: A Creative Approach. Reading, MA: Addison-Wesley, ISBN: Elementary text with an emphasis on creativity. Mehlhorn, Kurt. Data Structures and Algorithms. 3 vols. New York, NY: Springer-Verlag, ISBN: X. ISBN: X. ISBN: Three volumes: (1) Sorting and Searching, (2) Graph Algorithms and NP-Completeness, and (3) Multidimensional Searching and Computational Geometry. Lecture notes on basic and advanced topics. Niven, Ivan, and Herbert S. Zuckerman. An Introduction to the Theory of Numbers. 4th ed. New York, NY: John Wiley & Sons, ISBN: Readable introduction to number theory. Papadimitriou, Christos H., and Kenneth Steiglitz. Combinatorial Optimization: Algorithms and Complexity. Englewood Cliffs, NJ: Prentice-Hall, ISBN: Linear programming and its variants. Press, William P., Brian P. Flannery, Saul A. Teukolsky, and William T. Vetterling. Numerical Recipies in C: The Art of Scientific Computing. Cambridge, UK: Cambridge University Press, ISBN: X. Code for numerical algorithms. Reingold, Edwin M., Jurg Nievergelt, and Narsingh Deo. Combinatorial Algorithms: Theory and Practice. Englewood Cliffs, NJ: Prentice-Hall, ISBN: X. Good on recurrence relations and binary search trees. Sedgewick, Robert. Algorithms. 2nd ed. Reading, MA: Addison-Wesley, ISBN: Elementary text with an excellent breadth of topics. Light on analysis, but lots of figures. Sipser, Michael. Introduction to the Theory of Computation. Boston, MA: PWS Publishing Company, ISBN: X. A good text on computability and complexity theory. Tarjan, Robert Endre. Data Structures and Network Algorithms. Philadelphia, PA: Society for Industrial and Applied Mathematics, ISBN: Advanced book with tons of good stuff. |
Bu bölüm, ekran okuyucu yazılımlarıyla kullanılamayan dökümanları içerir. Bir "#" sembolü, bu tip dökümanları belirtir. Bu bölümdeki bazı dosyalar .c, ve .java gibi özel yazılımları kullanmayı gerektirir. Derslerin problem setleri, öğrencilerin çözmesi gereken pek çok egzersiz ve problemi içerir. Öğrenciler sadece problemleri çözüm teslim etmek zorundadırlar ama, ders materyallerinde uzmanlaşmalarına yardımcı olmak adına, egzersizleri çözmeleri de önerilir. Egzersiz sorularının çoğu ders kitabından alınmıştır. | ||||||||||||||||||||
|
Bu kısım ekran okuma yazılımıyla kullanılamayacak dökümanlar içerir. "#" sembolü bu tip dökümanları belirtir.
Bu kısım dersin güncel ve pratik sınavlarını içerir.
1 Algoritmalara Giriş J/J DERS 1 Algoritmaların Çözümlemesi Araya yerleştirme sıralaması Asimptotik çözümleme Birleştirme sıralaması Yinelemeler Prof. Charles E. Leiserson
2 Dersle ilgili bilgiler 1. Öğretim kadrosu. Uzaktan eğitim 3. Ön koşullar 4. Dersler 5. Etütler 6. Ders notları. Ders kitabı 8. Dersin WEB sitesi. Ek destek Kayıt. Problem setleri. Algoritmaları tanımlamak. Not verme politikası Ortak çalışma politikası September, 05 Introduction to Algorithms L1.
3 Algoritmaların çözümlemesi Bilgisayar program başarımı ve kaynak kullanımı konusunda teorik çalışmalar Başarımdan daha önemli ne vardır? modülerlik kullanıcı dostluğu doğruluk programcı zamanı bakım kolaylığı basitlik işlevsellik genişletilebilirlik sağlamlık güvenilirlik September, 05 Introduction to Algorithms L
4 Neden algoritmalar ve başarımla uğraşırız? Algoritmalarla ölçeklenebilirlik anlaşılabilir. Başarım genelde yapılabilir olanla imkansızın arasındaki çizgiyi tanımlar. Algoritmik matematik program davranışlarını açıklamak için ortak dil oluşturur. Başarım bilgi işlemenin para birimidir. Program başarımından alınan dersler diğer bilgi işleme kaynaklarına genellenebilir. Hız eğlencelidir! September, 05 Introduction to Algorithms L
5 Sıralama (sorting) problemi Girdi: dizi a 1, a,, a n sayıları. Çıktı: permütasyon a 1, a,, a n öyle ki a 1 a a n. Örnek: Girdi: Çıktı: September, 05 Introduction to Algorithms L
6 Araya yerleştirme sıralaması (Insertion sort) pseudocode ( sözdekod ) INSERTION-SORT (A, n) A[ n] for j to n do key A[ j] i j 1 while i > 0 and A[i] > key do A[i+1] A[i] i i 1 A[i+1] = key (anahtar) September, 05 Introduction to Algorithms L
7 Araya yerleştirme sıralaması (Insertion sort) pseudocode (sözde kod) INSERTION-SORT (A, n) A[ n] for j to n do key A[ j] i j 1 while i > 0 and A[i] > key do A[i+1] A[i] i i 1 A[i+1] = key A: 1 i j n key (anahtar) sorted (sıralı) September, 05 Introduction to Algorithms L1.
8 Araya yerleştirme sıralaması örneği September, 05 Introduction to Algorithms L
9 Araya yerleştirme sıralaması örneği September, 05 Introduction to Algorithms L1.
10 Araya yerleştirme sıralaması örneği September, 05 Introduction to Algorithms L
11 Araya yerleştirme sıralaması örneği September, 05 Introduction to Algorithms L1.
12 Araya yerleştirme sıralaması örneği September, 05 Introduction to Algorithms L1.
13 Araya yerleştirme sıralaması örneği September, 05 Introduction to Algorithms L1.
14 Araya yerleştirme sıralaması örneği September, 05 Introduction to Algorithms L
15 Araya yerleştirme sıralaması örneği September, 05 Introduction to Algorithms L
16 Araya yerleştirme sıralaması örneği September, 05 Introduction to Algorithms L
17 Araya yerleştirme sıralaması örneği September, 05 Introduction to Algorithms L
18 Araya yerleştirme sıralaması örneği (bitti) September, 05 Introduction to Algorithms L
19 Koşma süresi (Running time) Koşma süresi girişe bağımlıdır: Önceden sıralanmış bir diziyi sıralamak daha kolaydır. Koşma süresinin girişin boyutuna göre parametrelenmesi yararlıdır, çünkü kısa dizileri sıralamak uzun dizilere oranla daha kolaydır. Genellikle, koşma süresinde üst sınırları ararız, çünkü herkes garantiden hoşlanır. September, 05 Introduction to Algorithms L
20 Çözümleme türleri En kötü durum (Worst-case): (genellikle) T(n) = n boyutlu bir girişte algoritmanın maksimum süresi Ortalama durum: (bazen) T(n) = n boyutlu her girişte algoritmanın beklenen süresi. Girişlerin istatistiksel dağılımı için varsayım gerekli. En iyi durum: (gerçek dışı) Bir giriş yapısında hızlı çalışan yavaş bir algoritma ile hile yapmak. September, 05 Introduction to Algorithms L1.
21 Makineden-bağımsız zaman Araya yerleştirme sıralamasının en kötü zamanı nedir? Bilgisayarın hızına bağlıdır: bağıl ( rölatif ) zaman ( aynı makinede), mutlak (absolüt ) zaman (farklı makinelerde). BÜYÜK FİKİR: Makineye bağımlı sabitleri görmezden gel. n ayaklaştıkça, T(n)nin büyümesine bak. " Asimptotik Çözümleme" September, 05 Introduction to Algorithms L
22 Θ- simgelemi (notation) Matematik: Θ(g(n)) = { f (n):öyle c 1, c, n 0 pozitif sabit sayıları vardır ki tüm n n0} için 0 c 1 g(n) f (n) c g(n). Mühendislik: Düşük değerli terimleri at; ön sabitleri ihmal et. Örnek: 3n 3 + 0n 5n = Θ(n 3 ) September, 05 Introduction to Algorithms L1.
23 Asimptotik başarım T(n) n yeterince büyürse, Θ(n ) algoritması bir Θ(n 3 ) algoritmasından her zaman daha hızlıdır. n n 0 Öte yandan asimptotik açıdan yavaş algoritmaları ihmal etmemeliyiz. Gerçek dünyada tasarımın mühendislik hedefleriyle dikkatle dengelenmesi gereklidir. Asimptotik çözümleme düşüncemizi yapılandırmada önemli bir araçtır. September, 05 Introduction to Algorithms L
24 Araya yerleştirme sıralaması çözümlemesi En kötü durum: Giriş tersten sıralıysa. T ( n) = n j= Θ( j) = Θ ( n ) Ortalama durum:tüm permutasyonlar eşit olasılıklı. T ( n) = n j= Θ( j / ) = Θ ( n ) [aritmetik seri] Araya yerleştirme sıralaması hızlı bir algoritma mıdır? Küçük n değerleri için olabilir. Büyük n değerleri için asla! September, 05 Introduction to Algorithms L
25 Birleştirme sıralaması BİRLEŞTİRME-SIRALAMASI A[ n] 1. Eğer n = 1 ise, işlem bitti.. A[ n/ ]ve A[ n/ + n ]yi özyinelemeli sırala. 3. sıralanmış listeyi Birleştir. Anahtar altyordam: Birleştirme September, 05 Introduction to Algorithms L
26 Sıralı iki dizilimi birleştirme 1 September, 05 Introduction to Algorithms L
27 Sıralı iki dizilimi birleştirme 1 1 September, 05 Introduction to Algorithms L1.
28 Sıralı iki dizilimi birleştirme 1 1 September, 05 Introduction to Algorithms L
29 Sıralı iki dizilimi birleştirme 1 1 September, 05 Introduction to Algorithms L1.
30 Sıralı iki dizilimi birleştirme 1 1 September, 05 Introduction to Algorithms L
31 Sıralı iki dizilimi birleştirme 1 1 September, 05 Introduction to Algorithms L
32 Sıralı iki dizilimi birleştirme 1 1 September, 05 Introduction to Algorithms L
33 Sıralı iki dizilimi birleştirme 1 1 September, 05 Introduction to Algorithms L
34 Sıralı iki dizilimi birleştirme 1 1 September, 05 Introduction to Algorithms L
35 Sıralı iki dizilimi birleştirme 1 1 September, 05 Introduction to Algorithms L
36 Sıralı iki dizilimi birleştirme 1 1 September, 05 Introduction to Algorithms L
37 Sıralı iki dizilimi birleştirme 1 1 September, 05 Introduction to Algorithms L
38 Sıralı iki dizilimi birleştirme 1 1 Süre = Θ(n), toplam n elemanı birleştirmek için (doğrusal zaman). September, 05 Introduction to Algorithms L
39 Birleştirme sıralamasının çözümlenmesi Suistimal T(n) Θ(1) T(n/) Θ(n) BİRLEŞTİRME-SIRALAMASI A[ n] 1. Eğer n = 1se, bitir.. Yinelemeli olarak A[ n/ ] ve A[ n/ + n ]yi sırala. 3. sıralı listeyi Birleştir Özensizlik: T( n/ ) + T( n/ ) olması gerekir, ama asimptotik açıdan bu önemli değildir. September, 05 Introduction to Algorithms L
40 Birleştirme sıralaması için yineleme T(n) = Θ(1) eğer n = 1ise; T(n/) + Θ(n) eğer n > 1ise. Genellikle nnin küçük değerleri için taban durumu ( base case ) olan T(n) = Θ(1) i hesaplara katmayacağız; ama bunu sadece yinelemenin asimptotik çözümünü etkilemiyorsa yapacağız.. Derste T(n)nin üst sınırını bulmanın birkaç yolunu inceleyeceğiz. September, 05 Introduction to Algorithms L
41 Yineleme ağacı T(n) = T(n/) + cnyi çözün; burada c > 0 bir sabittir. September, 05 Introduction to Algorithms L
42 Yineleme ağacı T(n) = T(n/) + cni çözün; burada c > 0 bir sabittir. T(n) September, 05 Introduction to Algorithms L
43 Yineleme ağacı T(n) = T(n/) + cni çözün; burada c > 0 bir sabittir. cn T(n/) T(n/) September, 05 Introduction to Algorithms L
44 Yineleme ağacı T(n) = T(n/) + cni çözün; burada c > 0 bir sabittir. cn cn/ cn/ T(n/4) T(n/4) T(n/4) T(n/4) September, 05 Introduction to Algorithms L
45 Yineleme ağacı T(n) = T(n/) + cni çözün; burada c > 0 bir sabittir.i cn cn/ cn/ cn/4 cn/4 cn/4 cn/4 Θ(1) September, 05 Introduction to Algorithms L
46 Yineleme ağacı T(n) = T(n/) + cni çözün; burada c > 0 bir sabittir. cn cn/ cn/ h = lg n cn/4 cn/4 cn/4 cn/4 Θ(1) September, 05 Introduction to Algorithms L
47 Yineleme ağacı T(n) = T(n/) + cni çözün; burada c > 0 bir sabittir. cn cn cn/ cn/ h = lg n cn/4 cn/4 cn/4 cn/4 Θ(1) September, 05 Introduction to Algorithms L
48 Yineleme ağacı T(n) = T(n/) + cni çözün; burada c > 0 bir sabittir. cn cn cn/ cn/ cn h = lg n cn/4 cn/4 cn/4 cn/4 Θ(1) September, 05 Introduction to Algorithms L
49 Yineleme ağacı T(n) = T(n/) + cni çözün; burada c > 0 bir sabittir. cn cn cn/ cn/ cn h = lg n cn/4 cn/4 cn/4 cn/4 cn Θ(1) September, 05 Introduction to Algorithms L
50 Yineleme ağacı T(n) = T(n/) + cni çözün; burada c > 0 bir sabittir. cn cn cn/ cn/ cn h = lg n cn/4 cn/4 cn/4 cn/4 cn Θ(1) yaprak sayısı = n Θ(n) September, 05 Introduction to Algorithms L
51 Yineleme ağacı T(n) = T(n/) + cni çözün; burada c > 0 bir sabittir. cn cn cn/ cn/ cn h = lg n cn/4 cn/4 cn/4 cn/4 cn Θ(1) yaprak sayısı = n Θ(n) Toplam = Θ(n lg n) September, 05 Introduction to Algorithms L
52 Sonuçlar Θ(n lg n), Θ(n )dan daha yavaş büyür. En kötü durumda, birleştirme sıralaması asimptotik olarak araya yerleştirme sıralamasından daha iyidir. Pratikte, birleştirme sıralaması araya yerleştirme sıralamasını n > 30 değerlerinde geçer. Bunu kendiniz deneyin! September, 05 Introduction to Algorithms L
Seviye: Lisans Öğretim Üyeleri: Prof. Charles Leiserson Prof. Erik Demaine Çevirmenler: Prof. Dr. Ali Yazıcı Haluk Ar | ||
J ders kitabının kapağı, Algoritmalara Giriş, İkinci Basım, Cormen, Leiserson, Rivest ve Stein. | ||
Ders Özellikleri | ||
Ders Videoları | Transkriptler | |
Seçilmiş ders notları | Ödevler ve Çözümleri | |
Sınavlar ve Çözümleri | ||
Dersin Ana Başlıkları | ||
Bu ders bütün ders notları ve ders videolarını içermektedir. Ders kitabı Prof. Leiserson'ın katkısıyla yazılmıştır. | ||
Dersin Tanımı | ||
Bu ders, verimli algoritmaların tasarımı ve çözümlemesi ile ilgili teknikleri, pratikteki kullanımlarını vurgulayarak öğretir. Dersin içerdiği konular: Sıralama, arama ağaçları, yığınlar ve kıyım fonksiyonları, böl ve fethet; dinamik programlama, amortize edilmiş çözümleme, grafik algoritmaları, en kısa yollar, ağ akışı, bilişimsel geometri, sayı teorisi algoritmaları, polinom ve matriks hesaplamaları; ön bellekleme ve paralel hesaplamalardır. Bu ders aynı zamanda Singapur-MIT Ortaklığı (SMA) programı kapsamında SMA sayılı ders olarak da verilmektedir. (Algoritmaların Tasarımı ve Çözümlenmesi ) | ||
Teknik Gereksinimler | ||
Bu dersteki bazı dosyaları çalıştırmak için özel yazılımlar gerekir: .c, .java. |
Bu bölüm, ekran okuyucu yazılımlarıyla kullanılamayan dökümanları içerir. Bir "#" sembolü, bu tip dökümanları belirtir.
Bu bölümdeki bazı dosyalar .c, ve .java gibi özel yazılımları kullanmayı gerektirir.
Derslerin problem setleri, öğrencilerin çözmesi gereken pek çok egzersiz ve problemi içerir. Öğrenciler sadece problemleri çözüm teslim etmek zorundadırlar ama, ders materyallerinde uzmanlaşmalarına yardımcı olmak adına, egzersizleri çözmeleri de önerilir. Egzersiz sorularının çoğu ders kitabından alınmıştır.