İkili arama ağacını Java ile baştan kur
Java İkili Arama Ağaçları (BST) eğitimi 2 günlük uygulamalı programda ağaç kavramları, ekleme ve arama, dolaşma teknikleri, test ve görselleştirme gibi konuları kapsar. Comparable tabanlı jenerik bir ikili arama ağacı sınıfını sıfırdan yazabilirsiniz.
BST işlemleri, dolaşma, silme ve AVL dengeleme
Bu eğitim, ikili arama ağacı (Binary Search Tree) veri yapısını Java ile uçtan uca uygulatır. Düğüm sınıfı tasarımı, özyinelemeli ve yinelemeli ekleme/arama, inorder-preorder-postorder ve seviye sırası dolaşma, üç durumlu silme algoritması (yaprak, tek çocuk, iki çocuk ve inorder ardıl) ele alınır. Dejenere ağaç problemi üzerinden AVL döndürmeleri (LL, RR, LR, RL), kırmızı-siyah ağaç kuralları ve TreeMap/TreeSet iç yapısı incelenir; tüm işlemlerin O(h) karmaşıklığı ölçülür.
2 Gün. Her gün dört modül; katılımcılar bst temelleri konusundan başlayıp silme ve dengeleme konusuyla tamamlar.
İleri Seviye — Java ile ikili arama ağacı (BST) uygulaması, dolaşma teknikleri, silme algoritması ve dengeleme.
Katılımcılar BST'yi jenerik bir sınıf olarak sıfırdan yazar, her işlemi JUnit ile test eder ve dejenere ağaçta performans düşüşünü ölçerek dengelemenin gerekçesini görür.
Düğüm referanslarıyla çalışan özyinelemeli düşünmeyi içselleştirirsiniz.
BST'nin en zor işlemi olan iki çocuklu düğüm silmeyi hatasız uygularsınız.
AVL döndürmeleriyle O(log n) garantisinin nasıl sağlandığını kodlayarak görürsünüz.
Eğitimden verim almak için faydalı olacak bilgi ve ortam gereksinimleri
Dizi, döngü, sınıf ve metot yazabilecek düzeyde Java bilgisi beklenir.
Logaritma, üs ve ardışık toplam gibi kavramlara aşinalık Big-O analizinde yardımcı olur.
Basit özyinelemeli metotları (faktöriyel, Fibonacci) okuyabilmek faydalıdır.
JDK 17+, IDE ve JUnit çalıştırabilen bir bilgisayar gerekir.
Programın gün gün akışı aşağıdadır. Bir güne tıklayarak o günün modüllerini ve içeriklerini görebilirsiniz.
Program sonunda katılımcılar:
Comparable tabanlı jenerik bir ikili arama ağacı sınıfını sıfırdan yazabilirsiniz.
Inorder, preorder, postorder ve seviye sırası dolaşmaları uygulayabilirsiniz.
Üç durumlu düğüm silme algoritmasını hatasız kodlayabilirsiniz.
k. eleman, aralık ve LCA sorgularını BST üzerinde çözebilirsiniz.
Döndürmelerle kendini dengeleyen AVL ağacı gerçekleyebilirsiniz.
İşlem sürelerini ağaç yüksekliği üzerinden O(h) olarak açıklayabilirsiniz.
TreeMap ve TreeSet'in kırmızı-siyah ağaç mantığıyla çalıştığını açıklayabilirsiniz.
Ağaç işlemlerini JUnit ile kenar durumlarda test edebilirsiniz.
Bu eğitim Digital Vizyon Akademi Başarı Sertifikası ile tamamlanır.
Eğitim başında “Ön Test”, bitiminde “Son Test” uygulanarak gelişim ölçümlenir. Değerlendirme formunu dolduran katılımcılar sertifikalarını alır. Sertifikanızın geçerliliğini Sertifika Sorgulama sayfasından doğrulayabilirsiniz.
Java Foundations: String Sınıfı eğitimi: String değişmezliği, havuz, equals ve ==, substring, indexOf, replace, split, StringBuilder, String.format ve regex'e g
Detayları Gör →Java Foundations: Döngü Yapıları eğitimi: for, while, do-while, for-each, sonsuz döngü, iç içe döngü, break-continue ve etiketler, sayaç ve toplayıcı kalıpları,
Detayları Gör →Java Foundations: Math ve Random Sınıfları eğitimi: Math.abs, pow, sqrt, round, floor, ceil, hypot, trigonometri, Math.random, java.util.Random, seed, nextInt,.
Detayları Gör →Java Foundations: Nesne Yönelimli Programlama eğitimi: Kapsülleme, kalıtım, super, polimorfizm, override, soyut sınıf, arayüz, Object sınıfı, equals ve hashCode
Detayları Gör →JDBC Batch İşlemleri ve Transaction Yönetimi eğitimi: addBatch, executeBatch, setAutoCommit, commit, rollback, Savepoint, izolasyon seviyeleri, deadlock, bağlan
Detayları Gör →